//+------------------------------------------------------------------+ //| Test.mq4 | //| Copyright © 2012, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright © 2012, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ bool start=true; int dec=1; int slip=3; int TP=20; int SL=20; int magik=33333; double lot=0.2; int start() { if(start) { if(MarketInfo("EURUSD",MODE_DIGITS)==5) { dec=dec*10; slip=slip*10; } start=false; } Print("ask ",Ask); Print("Digits ",Digits); Print(" normalized ask/dig ", NormalizeDouble(Ask,Digits)); Print("dec ", dec); int nt=0; double sl=Ask-SL*dec*Point; double tp=Ask+TP*dec*Point; Print("stoploss ",sl); Print("takeprofit ",tp); Print("minimalny stop ", MarketInfo(Symbol(),MODE_STOPLEVEL)); nt=OrderSend(Symbol(),OP_BUY,lot,Ask,slip,sl,tp,"Test",magik,0,Blue); int err; if(nt==0||nt==-1) { err=GetLastError(); errorprint(err); } //---- //---- return(0); } int errorprint(int a) { switch(a) { case 0: Print("no error");break; case 1: Print("No error but have not issue");break; case 2: Print("some error");break; case 3: Print("bad parameters");break; case 4: Print("trade server not answer");break; case 5: Print("old version of clients terminal");break; case 6: Print("not conection with trade server");break; case 7: Print("you do not have enuph privilege");break; case 8: Print("too more asking");break; case 9: Print("bad operation for work server"); case 64: Print("blocked an acount");break; case 65: Print("bad number acount");break; case 128: Print("too long time waiting");break; case 129: Print("wrong price");break; case 130: Print("wrong stops");break; case 131: Print("wrong lots");break; case 132: Print("tradecenter is closed");break; case 133: Print("trade prohibit");break; case 134: Print("not enouph money for trading");break; case 135: Print("price is changed");break; case 136: Print("have not price");break; case 137: Print("broker busy");break; case 138: Print("new prices");break; case 139: Print("order is blocked and work with");break; case 140: Print("you can only buy");break; case 141: Print("to many requests");break; case 145: Print("modify denied , order around price");break; case 146: Print("TRADE CONTEXT BUSY");break; case 147: Print("using date to deny by broker");break; case 148: Print("too many orders");break; case 4000: Print("no error");break; case 4001: Print("WRONG FUNCTION POINTER");break; case 4002: Print("ARRAY INDEX OUT OF RANGE");break; case 4003: Print("NO MEMORY FOR CALL STACK");break; case 4004: Print("RECURSIVE STACK OVERFLOW");break; case 4005: Print("NOT ENOUGH STACKS MEWMORY FOR PARAMETRS");break; case 4006: Print("NO MEMORY FOR PARAM STRING");break; case 4007: Print("NO MEMORY FOR TEMP STRING");break; case 4008: Print("NOT INITIALIZED STRING");break; case 4009: Print("NOT INITIALIZED ARRAYSTRING");break; case 4010: Print("NO MEMORY FOR ARRAYSTRING");break; case 4011: Print("too long string");break; case 4012: Print("REMAINDER FROM ZERO DIVIDE");break; case 4013: Print("ZERO DIVIDE");break; case 4014: Print("UNKNOWN COMMAND");break; case 4015: Print("WRONG JUMP");break; case 4016: Print("NOT INITIALIZED ARRAY");break; case 4017: Print("DLL CALLS NOT ALLOWED");break; case 4018: Print("CANNOT LOAD LIBRARY");break; case 4019: Print("CANNOT CALL FUNCTION");break; case 4020: Print("EXTERNAL CALLS NOT ALLOWED");break; case 4021: Print("NO MEMORY FOR RETURNED STRING");break; case 4022: Print("system busy");break; case 4050: Print("INVALID FUNCTION PARAMETRS QUANTYITY");break; case 4051: Print("INVALID FUNCTION PARAMETRS VALUE");break; case 4052: Print("STRING FUNCTION INTERNAL ERROR");break; case 4053: Print("SOME ARRAY ERROR");break; case 4054: Print("INCORRECT SERIESARRAY USING");break; case 4055: Print("CUSTOM INDICATOR ERROR");break; case 4056: Print("INCOMPATIBLE ARRAYS");break; case 4057: Print("GLOBAL VARIABLES PROCESSING");break; case 4058: Print("GLOBAL VARIABLE NOT FOUND");break; case 4059: Print("FUNCTION NOT ALLOWED IN TESTING");break; case 4060: Print("FUNCTION NOT CONFIRMED");break; case 4061: Print("send mail error");break; case 4062: Print("STRING PARAMETER EXPECTED");break; case 4063: Print("INTEGER PARAMETER EXPECTED");break; case 4064: Print("DOUBLE PARAMETER EXPECTED");break; case 4065: Print("ARRAY AS PARAMETER EXPECTED");break; case 4066: Print("HISTORY WILL UPDATED");break; case 4067: Print("trade error");break; case 4099: Print("end of file");break; case 4100: Print("wrong file name");break; case 4102: Print("too many opened files");break; case 4103: Print("can not open file");break; case 4104: Print("INCOMPATIBLE FILEACCESS");break; case 4105: Print("no order selected");break; case 4106: Print("uncnown symbol");break; case 4107: Print("invalid price parameter");break; case 4108: Print("invalid ticket");break; case 4109: Print("trade not allowed , you must allow live trading");break; case 4110: Print("longs not allowed");break; case 4111: Print("shorts not allowed");break; case 4200: Print("OBJECT ALREADY EXISTS");break; case 4201: Print("UNKNOWN OBJECT PROPERTY");break; case 4202: Print("OBJECT DOES NOT EXIST");break; case 4203: Print("UNKNOWN OBJECT TYPE");break; case 4204: Print("NO OBJECT NAME");break; case 4205: Print("OBJECT COORDINATES ERROR");break; case 4206: Print("NO SPECIFIED SUBWINDOW");break; case 4207: Print("SOME OBJECT ERROR");break; default : Print("MARAZM"); } return; } //+------------------------------------------------------------------+