
//+------------------------------------------------------------------+ //| BLACKJACK&HOOKERS.mq4 | //| Copyright 2018, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property strict //+------------------------------------------------------------------+ //| Multiplier enumeration for LotMultiplier | //+------------------------------------------------------------------+ enum lm { false_=0, x1=1, x2=2, x3=3, x4=4, x5=5, x6=6, x7=7, x8=8, x9=9, x10=10 }; //+------------------------------------------------------------------+ //| Enumeration of user languages | //+------------------------------------------------------------------+ enum la { RUS=0, DEU=1, ENG=2, FRA=3, ITA=4, ESP=5, SWA=6, TUR=7 }; extern string Par1="Trading Mode"; extern bool PriceLowMA_Buy = true; extern int CorrectionTradeEntry = 0; extern bool OneOrderTrading = false; extern bool StopLossTrading = false; extern bool FoxTrading = false; extern bool PipsTrading = false; extern string Par2="Freight Parameters"; extern double StartMoneyOnDeposit = 200; extern double FreightPercent = 100; extern string Par3="Trading Parameters"; extern double Lots = 0; extern double TakeProfit = 5; extern int Step = 100; extern int StopLoss = 600; extern int TrailingStop = 300; extern int CountOrders = 25; extern int FoxSeries = 100; extern double Risk = 2; extern lm LotMultiplier = false_; extern bool SwapAndComissions = true; extern string Par4="Moving Average"; extern int MaPeriod = 100; extern int Value = 500; extern double LimitTradeZone = 100; extern string Par6="GeoPriceLocation"; extern bool GeoPriceLocation = false; extern int GPL_CountBars = 720; extern int GPL_CountLevels = 5; extern string Par7="Deposit Saving"; extern bool DepositSaving=false; extern string Par8="Deposit Saving FoxTrading==false"; extern double DepositSavingPercent = 5; extern bool DS_Reverse = false; extern int DS_ReverseStep = 10; extern int DS_CountReverse = 5; extern bool DS_PaymentsForRisk = false; extern double DS_PaymentsSize = 10; extern double DS_Risk = 75; extern string Par9="Deposit Saving FoxTrading==true"; extern double DS_PercentA = 15; extern double DS_LotMultiplierA = 4; extern double DS_PercentB = 30; extern double DS_LotMultiplierB = 8; extern double DS_PercentC = 45; extern double DS_LotMultiplierC = 12; extern double DS_PercentD = 60; extern double DS_LotMultiplierD = 24; extern double DS_PercentE = 1000; extern double DS_LotMultiplierE = 0; extern double DS_PercentF = 1000; extern double DS_LotMultiplierF = 0; extern double DS_PercentG = 1000; extern double DS_LotMultiplierG = 0; extern double DS_PercentH = 1000; extern double DS_LotMultiplierH = 0; extern double DS_PercentI = 1000; extern double DS_LotMultiplierI = 0; extern double DS_PercentJ = 1000; extern double DS_LotMultiplierJ = 0; extern string Par10="Emergency Closure"; extern double EmergencyClosurePercent = 100; extern bool EmergencyRemove = false; extern string Par11="Investor Lawyer"; extern bool InvestorLawyer = false; extern double ProfitPercent = 100; extern string Par12="Other Parametrs"; extern bool TradeCheck = true; extern bool AutoChangeStrategy = false; extern bool TakeProfitSendMail = false; extern la Language = RUS; extern int DrawDownAlarm = 50; extern int MaxSpread = 50; extern int Slippage = 50; extern int Magic = 111; datetime timeprev=0; // Comment out to disable TrailX datetime restart; double maprice,op,ph,Lot,lot_ds,sl_lot,fox_lot,Activation,psft,Lots_,TakeProfit_,Risk_,EmergencyClosurePercent_,HighPrice,LowPrice,ab; int cn,cnh,countbars,cn_ds,i_,k_,ticket_s,ticket_ds,ticket_sl,ticket_fox,fox_error,buy,sell,lisa,print_,PriceLowMA_Buy_,CorrectionTradeEntry_,OneOrderTrading_,StopLossTrading_,FoxTrading_,GeoPriceLocation_,DepositSaving_,user_settings,HighIndex,LowIndex,GPL_trouble,FoxGPL_trouble,FoxGPL_send,GPLOOT_trouble,GPLOOT_send,spread,moneyback,locktrade,closerlock,drawdown,onlybuy,onlysell,notmoney; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void OnInit() { //+------------------------------------------------------------------+ //| Writing custom strategy | //+------------------------------------------------------------------+ if(AutoChangeStrategy==true && lisa==0 && print_==0) { if(user_settings==0 || UninitializeReason()==5) { PriceLowMA_Buy_ =PriceLowMA_Buy; CorrectionTradeEntry_ =CorrectionTradeEntry; OneOrderTrading_ =OneOrderTrading; StopLossTrading_ =StopLossTrading; FoxTrading_ =FoxTrading; Lots_ =Lots; TakeProfit_ =TakeProfit; Risk_ =Risk; GeoPriceLocation_ =GeoPriceLocation; DepositSaving_ =DepositSaving; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Запись пользовательской стратегии завершена");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Benutzerdefiniertes Schreiben der Strategie abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Custom strategy write completed");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Écriture de stratégie personnalisée terminée");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Scrittura strategia personalizzata completata");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Estrategia personalizada escrita completada");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Mkakati wa kawaida umeandika kukamilika");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Özel strateji yaz1m1 tamamland1");} user_settings=1; } } else if(AutoChangeStrategy==true && lisa==1 && print_==1) { if(user_settings==1 && UninitializeReason()==5) { PlaySound("alert.wav"); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: В сменной стратегии запись пользовательской стратегии невозможна");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: In einer Plug-In-Strategie ist das Schreiben einer benutzerdefinierten Strategie nicht möglich");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: In a plug-in strategy, writing a custom strategy is not possible");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Dans une stratégie de plug-in, écrire une stratégie personnalisée n'est pas possible");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: In una strategia di plug-in, non è possibile scrivere una strategia personalizzata");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: En una estrategia de plug-in, escribir una estrategia personalizada es imposible");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Katika mkakati wa kuziba, kuandika mkakati wa desturi haiwezekani");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Eklenti stratejisinde, özel bir strateji yazmak mümkün değildir");} } } } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //+------------------------------------------------------------------+ //| Counters | //+------------------------------------------------------------------+ cn=CountTrades(); // The number of market orders OP_BUY and OP_SELL op=CalculateProfit(); // Profit / loss market orders OP_BUY and OP_SELL ph=CalculateProfitHistory(); // Profit / loss of closed orders OP_BUY and OP_SELL cnh=CountTradesHistory(); // The number of closed orders OP_BUY and OP_SELL if(cnh>0) psft=ph/(double)cnh; // Profitability strategy for 1 trade in units of currency countbars=Bars(_Symbol,0); // Number of bars on the current chart //+------------------------------------------------------------------+ //| Zeroing the switches for StopLossTrading | //+------------------------------------------------------------------+ if(StopLossTrading==true) {CountTrades(); if(cn==0) {closerlock=0; onlybuy=0; onlysell=0; GPLOOT_send=0;}} //+------------------------------------------------------------------+ //| Spread Check | //+------------------------------------------------------------------+ if(locktrade==0 && spread==0 && cn>=0 && FoxTrading==false && (OneOrderTrading==false || PipsTrading==true) && MarketInfo(_Symbol,MODE_SPREAD)>MaxSpread && op>=0) { locktrade=1; spread=1; CloseAll(); restart=TimeLocal()+10800; // Calculation of the restart time if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Высокий спред: Эксперт продолжит работу в "+TimeToString(restart,TIME_MINUTES));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" HIGH SPREAD: EXPERT WIRD BEARBEITET "+TimeToString(restart,TIME_MINUTES));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" HIGH SPREAD: EXPERT WILL CONTINUE WORK AT "+TimeToString(restart,TIME_MINUTES));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" HIGH SPREAD: L’EXPERT CONTINUERA DE TRAVAILLER À "+TimeToString(restart,TIME_MINUTES));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" ALTA DIFFUSIONE: L'ESPERTO CONTINUERÀ IL LAVORO A "+TimeToString(restart,TIME_MINUTES));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" SPREAD ALTO: EL EXPERTO CONTINUARÁ TRABAJANDO EN "+TimeToString(restart,TIME_MINUTES));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" UFUMU WA MAHIMU: MFIDUO WA KUJUMA KUTUMIA AT "+TimeToString(restart,TIME_MINUTES));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" YÜKSEK YÜKSEKLİK: UZMAN ÇALIŞIYOR "+TimeToString(restart,TIME_MINUTES));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Высокий спред: Эксперт продолжит работу в "+TimeToString(restart,TIME_MINUTES));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" HIGH SPREAD: EXPERT WIRD BEARBEITET "+TimeToString(restart,TIME_MINUTES));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" HIGH SPREAD: EXPERT WILL CONTINUE WORK AT "+TimeToString(restart,TIME_MINUTES));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" HIGH SPREAD: L’EXPERT CONTINUERA DE TRAVAILLER À "+TimeToString(restart,TIME_MINUTES));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" ALTA DIFFUSIONE: L'ESPERTO CONTINUERÀ IL LAVORO A "+TimeToString(restart,TIME_MINUTES));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" SPREAD ALTO: EL EXPERTO CONTINUARÁ TRABAJANDO EN "+TimeToString(restart,TIME_MINUTES));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" UFUMU WA MAHIMU: MFIDUO WA KUJUMA KUTUMIA AT "+TimeToString(restart,TIME_MINUTES));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" YÜKSEK YÜKSEKLİK: UZMAN ÇALIŞIYOR "+TimeToString(restart,TIME_MINUTES));} } else if(locktrade==1 && spread==1 && cn>=0 && FoxTrading==false && (OneOrderTrading==false || PipsTrading==true) && MarketInfo(_Symbol,MODE_SPREAD)<MaxSpread && TimeLocal()>=restart) { locktrade=0; spread=0; } else if(locktrade==1 && spread==1 && cn>=0 && FoxTrading==false && (OneOrderTrading==false || PipsTrading==true) && MarketInfo(_Symbol,MODE_SPREAD)>MaxSpread && TimeLocal()>=restart) { restart=TimeLocal()+10800; } //+------------------------------------------------------------------+ //| Investor lawyer | //+------------------------------------------------------------------+ if(locktrade==0 && InvestorLawyer==true && moneyback==0 && cn==0) { if(AccountBalance()>StartMoneyOnDeposit*(1+ProfitPercent/100)) { locktrade=1; moneyback=1; ab=AccountBalance(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Адвокат требует вернуть 50% или более прибыли для инвестора");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Der Anwalt fordert für den Anleger eine Rendite von mindestens 50%");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" The lawyer demands the return of 50% or more profit for the investor");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" L'avocat demande le retour de 50% ou plus de profit pour l'investisseur");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" L'avvocato richiede il ritorno del 50% o più del profitto per l'investitore");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" El abogado exige la devolución del 50% o más de beneficio para el inversor");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Mwanasheria anadai kurudi kwa asilimia 50 au zaidi kwa mwekezaji");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Avukat, yat1r1mc1 için% 50 veya daha fazla kar getirilmesini talep ediyor");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Адвокат требует вернуть 50% или более прибыли для инвестора");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Der Anwalt fordert für den Anleger eine Rendite von mindestens 50%");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" The lawyer demands the return of 50% or more profit for the investor");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" L'avocat demande le retour de 50% ou plus de profit pour l'investisseur");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" L'avvocato richiede il ritorno del 50% o più del profitto per l'investitore");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" El abogado exige la devolución del 50% o más de beneficio para el inversor");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Mwanasheria anadai kurudi kwa asilimia 50 au zaidi kwa mwekezaji");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Avukat, yat1r1mc1 için% 50 veya daha fazla kar getirilmesini talep ediyor");} } } else if(locktrade==1 && InvestorLawyer==true && moneyback==1 && cn==0 && AccountBalance()<=ab-(ab-StartMoneyOnDeposit)*50/100) { locktrade=0; moneyback=0; } //+---------------------------------------------------------------------------+ //| Monitoring the exhaustion of freight on profit closed OP_BUY and OP_SELL | //+---------------------------------------------------------------------------+ if(locktrade==0 && FoxTrading==false && FreightPercent<100) { if(ph<-StartMoneyOnDeposit*FreightPercent/100) { locktrade=1; CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Советник исчерпал фрахт и завершил работу");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Berater hat die Fracht erschöpft und die Arbeit abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor has exhausted the freight and completed the work");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Le conseiller a épuisé le fret et achevé les travaux");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Il consulente ha esaurito il trasporto e completato i lavori");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" El asesor ha agotado la carga y completado el trabajo");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Mshauri amechoka mizigo na kumaliza kazi");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Dan1şman yükü tüketti ve işi tamamlad1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Советник исчерпал фрахт и завершил работу");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Berater hat die Fracht erschöpft und die Arbeit abgeschlossen");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor has exhausted the freight and completed the work");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Le conseiller a épuisé le fret et achevé les travaux");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Il consulente ha esaurito il trasporto e completato i lavori");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" El asesor ha agotado la carga y completado el trabajo");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Mshauri amechoka mizigo na kumaliza kazi");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Dan1şman yükü tüketti ve işi tamamlad1");} ExpertRemove(); } } //+---------------------------------------------------------------------------+ //| Control of exhaustion of freight on a drawdown of open OP_BUY and OP_SELL | //+---------------------------------------------------------------------------+ if(locktrade==0 && FoxTrading==true && FreightPercent<100) { if(op<-StartMoneyOnDeposit*FreightPercent/100) { CloseAll(); if(AccountBalance()*FreightPercent/100>=StartMoneyOnDeposit*FreightPercent/100) { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Советник исчерпал фрахт по просадке с продолжением работы ^^");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Berater hat die Fracht mit der Fortsetzung der Arbeit auf dem Abzug erschöpft ^^");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor has exhausted the freight on the drawdown with the continuation of work ^^");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Le conseiller a épuisé le fret lors du retrait avec la poursuite des travaux ^^");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Il consulente ha esaurito le merci sul drawdown con la continuazione del lavoro ^^");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" El asesor ha agotado el flete en la reducción con la continuación del trabajo ^^");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Mshauri amechoka mizigo juu ya kuanguka kwa kuendeleza kazi ^^");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Dan1şman, işin devam etmesi ile beraber çekilişteki yükü tüketti ^^");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Советник исчерпал фрахт по просадке с продолжением работы ^^");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Berater hat die Fracht mit der Fortsetzung der Arbeit auf dem Abzug erschöpft ^^");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor has exhausted the freight on the drawdown with the continuation of work ^^");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Le conseiller a épuisé le fret lors du retrait avec la poursuite des travaux ^^");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Il consulente ha esaurito le merci sul drawdown con la continuazione del lavoro ^^");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" El asesor ha agotado el flete en la reducción con la continuación del trabajo ^^");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Mshauri amechoka mizigo juu ya kuanguka kwa kuendeleza kazi ^^");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Dan1şman, işin devam etmesi ile beraber çekilişteki yükü tüketti ^^");} } else if(AccountBalance()*FreightPercent/100<StartMoneyOnDeposit*FreightPercent/100) { locktrade=1; CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Советник исчерпал фрахт по просадке и завершил работу ^^");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Der Berater hat die Drawdown-Fracht erschöpft und die Arbeit abgeschlossen ^^");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor has exhausted the drawdown freight and completed the work ^^");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Le conseiller a épuisé le fret de prélèvement et a terminé les travaux ^^");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Il consulente ha esaurito il trasporto merci e ha completato il lavoro ^^");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" El asesor ha agotado el flete de reducción y ha completado el trabajo ^^");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Mshauri amechoka mizigo ya kuteka na kukamilisha kazi ^^");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Dan1şman çekilme yükünü tüketti ve işi tamamlad1 ^^");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Советник исчерпал фрахт по просадке и завершил работу ^^");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Der Berater hat die Drawdown-Fracht erschöpft und die Arbeit abgeschlossen ^^");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor has exhausted the drawdown freight and completed the work ^^");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Le conseiller a épuisé le fret de prélèvement et a terminé les travaux ^^");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Il consulente ha esaurito il trasporto merci e ha completato il lavoro ^^");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" El asesor ha agotado el flete de reducción y ha completado el trabajo ^^");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Mshauri amechoka mizigo ya kuteka na kukamilisha kazi ^^");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Dan1şman çekilme yükünü tüketti ve işi tamamlad1 ^^");} ExpertRemove(); } } } //+------------------------------------------------------------------+ //| Warning of a critical drawdown of open OP_BUY and OP_SELL | //+------------------------------------------------------------------+ if(locktrade==0 && cn>0 && drawdown==0 && op<-AccountBalance()*FreightPercent/100*DrawDownAlarm/100) { drawdown=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Предупреждение: Уровень просадки превысил "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Warnung: Der Drawdown-Level wurde überschritten "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Warning: Drawdown level exceeded "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Avertissement: Niveau de tirage dépassé "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Attenzione: Livello di drawdown superato "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Advertencia: Nivel de reducción excedido "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Onyo: Kiwango cha kuteka kilizidi "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Uyar1: Drawdown seviyesi aş1ld1 "+IntegerToString(DrawDownAlarm)+"%");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Предупреждение: Уровень просадки превысил "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Warnung: Der Drawdown-Level wurde überschritten "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Warning: Drawdown level exceeded "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Avertissement: Niveau de tirage dépassé "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Attenzione: Livello di drawdown superato "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advertencia: Nivel de reducción excedido "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Onyo: Kiwango cha kuteka kilizidi "+IntegerToString(DrawDownAlarm)+"%");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Uyar1: Drawdown seviyesi aş1ld1 "+IntegerToString(DrawDownAlarm)+"%");} } else if(locktrade==0 && drawdown==1 && cn==0) { drawdown=0; } //+------------------------------------------------------------------+ //| Return to user strategy | //+------------------------------------------------------------------+ if(AutoChangeStrategy==true && lisa==0) { PriceLowMA_Buy =PriceLowMA_Buy_; CorrectionTradeEntry =CorrectionTradeEntry_; OneOrderTrading =OneOrderTrading_; StopLossTrading =StopLossTrading_; FoxTrading =FoxTrading_; Lots =Lots_; TakeProfit =TakeProfit_; Risk =Risk_; GeoPriceLocation =GeoPriceLocation_; DepositSaving =DepositSaving_; } //+-----------------------------------------------------------------------------------+ //| Calculation of the profitability of 1 trade to activate the change of strategy | //+-----------------------------------------------------------------------------------+ if(AutoChangeStrategy==true && PipsTrading==false && FoxTrading==false && StopLossTrading==false) Activation=TakeProfit/(double)3; else if(AutoChangeStrategy==true && PipsTrading==false && FoxTrading==false && StopLossTrading==true) Activation=TakeProfit/CountOrders/(double)3; else if(AutoChangeStrategy==true && PipsTrading==true && FoxTrading==false && StopLossTrading==false) Activation=TakeProfit/(double)3*_Point; else if(AutoChangeStrategy==true && PipsTrading==true && FoxTrading==false && StopLossTrading==true) Activation=TakeProfit/CountOrders/(double)3*_Point; //+------------------------------------------------------------------+ //| FoxTrading strategy change | //+------------------------------------------------------------------+ if(AutoChangeStrategy==true && (OneOrderTrading==false || OneOrderTrading==true) && lisa==0 && print_==0 && cn==0 && cnh>10 && ph!=0 && psft<Activation) lisa=1; if(lisa==1) { if(print_==0) { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Смена стратегии на FoxTrading");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Strategieänderung in FoxTrading");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Change of strategy to FoxTrading");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Changement de stratégie à FoxTrading");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Cambio di strategia a FoxTrading");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Cambio de estrategia para FoxTrading");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Mabadiliko ya mkakati FoxTrading");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Stratejinin değiştirilmesi FoxTrading");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Смена стратегии на FoxTrading");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Strategieänderung in FoxTrading");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Change of strategy to FoxTrading");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Changement de stratégie à FoxTrading");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Cambio di strategia a FoxTrading");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Cambio de estrategia para FoxTrading");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Mabadiliko ya mkakati FoxTrading");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Stratejinin değiştirilmesi FoxTrading");} CloseAll(); print_=1; } PriceLowMA_Buy=false; CorrectionTradeEntry=0; OneOrderTrading=false; StopLossTrading=false; FoxTrading=true; //Lots=0; //Set the volume, otherwise comment out the parameter to transfer the value from the user strategy TakeProfit=Activation*(double)3; //Set profit, otherwise comment out the parameter to transfer the value from the user strategy //Risk=2; //Set the risk, otherwise comment out the parameter to transfer the value from the user strategy //GeoPriceLocation=false; //Set the state of the price locator, otherwise the state from the user strategy DepositSaving=true; } if(lisa==1 && cn==0 && psft>Activation && print_==1 && AccountBalance()>StartMoneyOnDeposit) // Если улучшение статистики - возврат к пользовательским настройкам { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Возврат к пользовательской стратегии");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Rückkehr zur Benutzerstrategie");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Return to user strategy");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Retour à la stratégie utilisateur");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Ritorna alla strategia dell'utente");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Volver a la estrategia de usuario");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Rudi kwenye mkakati wa mtumiaji");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Kullan1c1 stratejisine geri dön");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Возврат к пользовательской стратегии");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Rückkehr zur Benutzerstrategie");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Return to user strategy");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Retour à la stratégie utilisateur");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Ritorna alla strategia dell'utente");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Volver a la estrategia de usuario");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Rudi kwenye mkakati wa mtumiaji");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AutoChangeStrategy: Kullan1c1 stratejisine geri dön");} CloseAll(); lisa=0; print_=0; } //+------------------------------------------------------------------+ //| Calculation of autolot | //+------------------------------------------------------------------+ Lot=Lots>0?Lots:NormalizeDouble((AccountBalance()*FreightPercent/100*AccountLeverage()/SymbolInfoDouble(_Symbol,SYMBOL_TRADE_CONTRACT_SIZE))*Risk/100,2); Lot=fmax(Lot,MarketInfo(_Symbol,MODE_MINLOT)); Lot=fmin(Lot,MarketInfo(_Symbol,MODE_MAXLOT)); //+------------------------------------------------------------------+ //| Check the opening of the current bar | //+------------------------------------------------------------------+ if(timeprev==Time[0]) return; // Comment out to disable TrailX timeprev=Time[0]; // Add datetime type to disable TrailX //+------------------------------------------------------------------+ //| Moving Average indicator | //+------------------------------------------------------------------+ maprice=iMA(_Symbol,0,MaPeriod,0,MODE_SMA,PRICE_CLOSE,0); //+------------------------------------------------------------------+ //| Auto step value for 1 order trade mode | //+------------------------------------------------------------------+ if(OneOrderTrading==true) {Step=100000;} //+------------------------------------------------------------------+ //| Checking the settings for fulfillment of trading conditions | //+------------------------------------------------------------------+ if(locktrade==0 && TradeCheck==true && cn==0 && OneOrderTrading==false && FoxTrading==false && StopLossTrading==false) { if(AccountBalance()/10*FreightPercent/100*AccountLeverage()/Lot<SymbolInfoDouble(_Symbol,SYMBOL_TRADE_CONTRACT_SIZE)) { locktrade=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk не обеспечивают торговые требования");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk Geben Sie keine Handelsanforderungen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk do not provide trade requirements");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk ne pas fournir d'exigences commerciales");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk non fornire requisiti commerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk no proporcionan requisitos comerciales");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk wala kutoa mahitaji ya biashara");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk ticaret şartlar1n1 sağlama");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk не обеспечивают торговые требования");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk Geben Sie keine Handelsanforderungen");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk do not provide trade requirements");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk ne pas fournir d'exigences commerciales");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk non fornire requisiti commerciali");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk no proporcionan requisitos comerciales");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk wala kutoa mahitaji ya biashara");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk ticaret şartlar1n1 sağlama");} ExpertRemove(); // Снять советник с графика } } if(locktrade==0 && TradeCheck==true && cn==0 && (OneOrderTrading==true || FoxTrading==true || StopLossTrading==true)) { if(AccountBalance()*FreightPercent/100*AccountLeverage()/Lot<SymbolInfoDouble(_Symbol,SYMBOL_TRADE_CONTRACT_SIZE)) { locktrade=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk не обеспечивают торговые требования");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk Geben Sie keine Handelsanforderungen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk do not provide trade requirements");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk ne pas fournir d'exigences commerciales");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk non fornire requisiti commerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk no proporcionan requisitos comerciales");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk wala kutoa mahitaji ya biashara");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk ticaret şartlar1n1 sağlama");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk не обеспечивают торговые требования");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk Geben Sie keine Handelsanforderungen");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk do not provide trade requirements");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk ne pas fournir d'exigences commerciales");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk non fornire requisiti commerciali");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk no proporcionan requisitos comerciales");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk wala kutoa mahitaji ya biashara");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" AccountBalance, Lots, Risk ticaret şartlar1n1 sağlama");} ExpertRemove(); // Снять советник с графика } } if(locktrade==0 && TradeCheck==true && cn==0 && lisa==0 && ((AutoChangeStrategy==true && FoxTrading_==true) || (OneOrderTrading==true && FoxTrading==true))) { locktrade=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" FoxTrading не совместим с AutoChangeStrategy / OneOrderTrading");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" FoxTrading nicht kompatibel mit AutoChangeStrategy / OneOrderTrading");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" FoxTrading not compatible with AutoChangeStrategy / OneOrderTrading");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" FoxTrading non compatible avec AutoChangeStrategy / OneOrderTrading");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" FoxTrading non compatibile con AutoChangeStrategy / OneOrderTrading");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" FoxTrading no es compatible con AutoChangeStrategy / OneOrderTrading");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" FoxTrading si sambamba na AutoChangeStrategy / OneOrderTrading");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" FoxTrading ile uyumlu değil AutoChangeStrategy / OneOrderTrading");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" FoxTrading не совместим с AutoChangeStrategy / OneOrderTrading");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" FoxTrading nicht kompatibel mit AutoChangeStrategy / OneOrderTrading");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" FoxTrading not compatible with AutoChangeStrategy / OneOrderTrading");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" FoxTrading non compatible avec AutoChangeStrategy / OneOrderTrading");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" FoxTrading non compatibile con AutoChangeStrategy / OneOrderTrading");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" FoxTrading no es compatible con AutoChangeStrategy / OneOrderTrading");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" FoxTrading si sambamba na AutoChangeStrategy / OneOrderTrading");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" FoxTrading ile uyumlu değil AutoChangeStrategy / OneOrderTrading");} ExpertRemove(); // Снять советник с графика } if(locktrade==0 && TradeCheck==true && cn==0 && ((GeoPriceLocation==false && countbars<MaPeriod) || (GeoPriceLocation==true && (countbars<MaPeriod || countbars<GPL_CountBars)))) { locktrade=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Значение MaPeriod или GPL_CountBars превышает количество баров на графике: "+IntegerToString(countbars));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Der MaPeriod- oder GPL_CountBars-Wert überschreitet die Anzahl der Balken im Diagramm: "+IntegerToString(countbars));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" MaPeriod or GPL_CountBars value exceeds the number of bars on the chart: "+IntegerToString(countbars));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" MaPeriod ou la valeur GPL_CountBars dépasse le nombre de barres sur le graphique: "+IntegerToString(countbars));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Il valore MaPeriod o GPL_CountBars supera il numero di barre sul grafico: "+IntegerToString(countbars));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" El valor de MaPeriod o GPL_CountBars excede el número de barras en el gráfico: "+IntegerToString(countbars));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" MaPeriod au GPL_CountBars thamani huzidi idadi ya baa kwenye chati: "+IntegerToString(countbars));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" MaPeriod veya GPL_CountBars değeri grafikteki çubuklar1n say1s1n1 aş1yor: "+IntegerToString(countbars));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Значение MaPeriod или GPL_CountBars превышает количество баров на графике: "+IntegerToString(countbars));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Der MaPeriod- oder GPL_CountBars-Wert überschreitet die Anzahl der Balken im Diagramm: "+IntegerToString(countbars));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" MaPeriod or GPL_CountBars value exceeds the number of bars on the chart: "+IntegerToString(countbars));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" MaPeriod ou la valeur GPL_CountBars dépasse le nombre de barres sur le graphique: "+IntegerToString(countbars));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Il valore MaPeriod o GPL_CountBars supera il numero di barre sul grafico: "+IntegerToString(countbars));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" El valor de MaPeriod o GPL_CountBars excede el número de barras en el gráfico: "+IntegerToString(countbars));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" MaPeriod au GPL_CountBars thamani huzidi idadi ya baa kwenye chati: "+IntegerToString(countbars));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" MaPeriod veya GPL_CountBars değeri grafikteki çubuklar1n say1s1n1 aş1yor: "+IntegerToString(countbars));} ExpertRemove(); } if(locktrade==0 && TradeCheck==true && StopLossTrading==true && (DepositSaving==true || OneOrderTrading==true || FoxTrading==true) && lisa==0) { locktrade=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading не совместим с DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading nicht kompatibel mit DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading not compatible with DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading non compatible avec DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading non compatibile con DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading no es compatible con DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading si sambamba na DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading ile uyumlu değil DepositSaving / OneOrderTrading / FoxTrading");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading не совместим с DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading nicht kompatibel mit DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading not compatible with DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading non compatible avec DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading non compatibile con DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading no es compatible con DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading si sambamba na DepositSaving / OneOrderTrading / FoxTrading");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading ile uyumlu değil DepositSaving / OneOrderTrading / FoxTrading");} ExpertRemove(); } if(locktrade==0 && TradeCheck==true && StopLossTrading==true && Value==0 && AutoChangeStrategy==true && lisa==0) { locktrade=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading c Value = 0 не совместим с AutoChangeStrategy");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading mit Value = 0 ist nicht mit AutoChangeStrategy kompatibel");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading with Value = 0 not compatible with AutoChangeStrategy");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading avec Value = 0 non compatible avec AutoChangeStrategy");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading con Value = 0 non compatibile con AutoChangeStrategy");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading with Value = 0 no es compatible con AutoChangeStrategy");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading na Value = 0 haiendani na AutoChangeStrategy");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading with Value = 0 AutoChangeStrategy ile uyumlu değil");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading c Value = 0 не совместим с AutoChangeStrategy");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading mit Value = 0 ist nicht mit AutoChangeStrategy kompatibel");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading with Value = 0 not compatible with AutoChangeStrategy");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading avec Value = 0 non compatible avec AutoChangeStrategy");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading con Value = 0 non compatibile con AutoChangeStrategy");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading with Value = 0 no es compatible con AutoChangeStrategy");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading na Value = 0 haiendani na AutoChangeStrategy");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" StopLossTrading with Value = 0 AutoChangeStrategy ile uyumlu değil");} ExpertRemove(); } //+------------------------------------------------------------------+ //| GeoPriceLocation | //+------------------------------------------------------------------+ if(GeoPriceLocation==true) { //+-------------------------------------------------------------------------+ //| Search for the maximum price in the current timeframe and range | //+-------------------------------------------------------------------------+ HighIndex=iHighest(_Symbol,0,MODE_HIGH,GPL_CountBars,0); if(HighIndex!=-1) { HighPrice=High[HighIndex]; string highlevel="GeoPriceLocation: HighPrice"; ObjectCreate(0,highlevel,OBJ_HLINE,0,0,0); // create an object of mountains. line //--- set the price level for the highlevel line ObjectSetDouble(0,highlevel,OBJPROP_PRICE,0,HighPrice); //--- set visibility ObjectSetInteger(0,highlevel,OBJPROP_TIMEFRAMES,OBJ_ALL_PERIODS); } else { if(Language==RUS) {PrintFormat("Ошибка вызова iHighest. Код ошибки=%d",GetLastError());} else if(Language==DEU){PrintFormat("iHighest Anruf fehlgeschlagen. Fehlercode=%d",GetLastError());} else if(Language==ENG){PrintFormat("iHighest call failed. Error code=%d",GetLastError());} else if(Language==FRA){PrintFormat("iHighest call a échoué. Code d'erreur=%d",GetLastError());} else if(Language==ITA){PrintFormat("iHighest call failed. Codice di errore=%d",GetLastError());} else if(Language==ESP){PrintFormat("iHighest llamada fallida. Código de error=%d",GetLastError());} else if(Language==SWA){PrintFormat("iHighest wito alishindwa. Nambari ya hitilafu=%d",GetLastError());} else if(Language==TUR){PrintFormat("iHighest arama başar1s1z oldu. Hata kodu=%d",GetLastError());} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Ошибка вызова iHighest. Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iHighest Anruf fehlgeschlagen. Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iHighest call failed. Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iHighest call a échoué. Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iHighest call failed. Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iHighest llamada fallida. Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iHighest wito alishindwa. Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iHighest arama başar1s1z oldu. Hata kodu: "+IntegerToString(GetLastError()));} if(FoxTrading==false && OneOrderTrading==true) GPLOOT_trouble+=1; else if(FoxTrading==false && OneOrderTrading==false) GPL_trouble+=1; else if(StopLossTrading==true) GPLOOT_trouble+=1; else if(FoxTrading==true) FoxGPL_trouble+=1; } //+-------------------------------------------------------------------------+ //| Search for the minimum price in the current timeframe and range | //+-------------------------------------------------------------------------+ LowIndex=iLowest(_Symbol,0,MODE_LOW,GPL_CountBars,0); if(LowIndex!=-1) { LowPrice=Low[LowIndex]; string lowlevel="GeoPriceLocation: LowPrice"; ObjectCreate(0,lowlevel,OBJ_HLINE,0,0,0); // create an object of mountains. line //--- set the price level for the lowlevel line ObjectSetDouble(0,lowlevel,OBJPROP_PRICE,0,LowPrice); //--- set visibility ObjectSetInteger(0,lowlevel,OBJPROP_TIMEFRAMES,OBJ_ALL_PERIODS); } else { if(Language==RUS) {PrintFormat("Ошибка вызова iLowest. Код ошибки=%d",GetLastError());} else if(Language==DEU){PrintFormat("iLowest Anruf fehlgeschlagen. Fehlercode=%d",GetLastError());} else if(Language==ENG){PrintFormat("iLowest call failed. Error code=%d",GetLastError());} else if(Language==FRA){PrintFormat("iLowest call a échoué. Code d'erreur=%d",GetLastError());} else if(Language==ITA){PrintFormat("iLowest call failed. Codice di errore=%d",GetLastError());} else if(Language==ESP){PrintFormat("iLowest llamada fallida. Código de error=%d",GetLastError());} else if(Language==SWA){PrintFormat("iLowest wito alishindwa. Nambari ya hitilafu=%d",GetLastError());} else if(Language==TUR){PrintFormat("iLowest arama başar1s1z oldu. Hata kodu=%d",GetLastError());} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Ошибка вызова iLowest. Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iLowest Anruf fehlgeschlagen. Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iLowest call failed. Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iLowest call a échoué. Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iLowest call failed. Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iLowest llamada fallida. Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iLowest wito alishindwa. Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" iLowest arama başar1s1z oldu. Hata kodu: "+IntegerToString(GetLastError()));} if(FoxTrading==false && OneOrderTrading==true) GPLOOT_trouble+=1; else if(FoxTrading==false && OneOrderTrading==false) GPL_trouble+=1; else if(StopLossTrading==true) GPLOOT_trouble+=1; else if(FoxTrading==true) FoxGPL_trouble+=1; } } //+------------------------------------------------------------------+ //| Start trading without GeoPriceLocation (except FoxTrading) | //+------------------------------------------------------------------+ if(cn==0 && FoxTrading==false && locktrade==0 && lisa==0) { if(GeoPriceLocation==false) { if(cn==0 && PriceLowMA_Buy==true && CorrectionTradeEntry==0 && Ask<maprice && (maprice-Ask)>=Value*_Point && (maprice-Ask)<=(double)Value*LimitTradeZone*_Point) {if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && PriceLowMA_Buy==true && CorrectionTradeEntry==0 && Bid>maprice && (Bid-maprice)>=Value*_Point && (Bid-maprice)<=(double)Value*LimitTradeZone*_Point) {if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && PriceLowMA_Buy==true && CorrectionTradeEntry>0 && Ask<maprice && (maprice-Ask)>=Value*_Point && (maprice-Ask)<=(double)Value*LimitTradeZone*_Point && Open[3]<Close[3] && Open[2]<Close[2] && Open[1]<Close[1] && Volume[3]>CorrectionTradeEntry && Volume[2]>CorrectionTradeEntry && Volume[1]>CorrectionTradeEntry && Close[1]<Ask) {if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && PriceLowMA_Buy==true && CorrectionTradeEntry>0 && Bid>maprice && (Bid-maprice)>=Value*_Point && (Bid-maprice)<=(double)Value*LimitTradeZone*_Point && Open[3]>Close[3] && Open[2]>Close[2] && Open[1]>Close[1] && Volume[3]>CorrectionTradeEntry && Volume[2]>CorrectionTradeEntry && Volume[1]>CorrectionTradeEntry && Close[1]>Bid) {if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && PriceLowMA_Buy==false && CorrectionTradeEntry==0 && Ask>maprice && (Ask-maprice)<=Value*_Point) {if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && PriceLowMA_Buy==false && CorrectionTradeEntry==0 && Bid<maprice && (maprice-Bid)<=Value*_Point) {if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && PriceLowMA_Buy==false && CorrectionTradeEntry>0 && Ask>maprice && (Ask-maprice)<=Value*_Point && Open[3]<Close[3] && Open[2]<Close[2] && Open[1]<Close[1] && Volume[3]>CorrectionTradeEntry && Volume[2]>CorrectionTradeEntry && Volume[1]>CorrectionTradeEntry && Close[1]<Ask) {if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && PriceLowMA_Buy==false && CorrectionTradeEntry>0 && Bid<maprice && (maprice-Bid)<=Value*_Point && Open[3]>Close[3] && Open[2]>Close[2] && Open[1]>Close[1] && Volume[3]>CorrectionTradeEntry && Volume[2]>CorrectionTradeEntry && Volume[1]>CorrectionTradeEntry && Close[1]>Bid) {if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} } else if(GeoPriceLocation==true && FoxTrading==false && locktrade==0 && lisa==0) { //+---------------------------------------------------------------------+ //| Start trading with support for GeoPriceLocation (except FoxTrading) | //+---------------------------------------------------------------------+ if(cn==0 && PriceLowMA_Buy==true && CorrectionTradeEntry==0 && Ask<maprice && (maprice-Ask)>=Value*_Point && (maprice-Ask)>=(double)Value*LimitTradeZone*_Point) { if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Ask>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Ask<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && (GPLOOT_trouble==0 || GPLOOT_trouble!=0) && GPLOOT_send==0) {if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} // Start trading by default } else if(cn==0 && PriceLowMA_Buy==true && CorrectionTradeEntry==0 && Bid>maprice && (Bid-maprice)>=Value*_Point && (Bid-maprice)<=(double)Value*LimitTradeZone*_Point) { if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Bid>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Bid<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && (GPLOOT_trouble==0 || GPLOOT_trouble!=0) && GPLOOT_send==0) {if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} // Start trading by default } else if(cn==0 && PriceLowMA_Buy==true && CorrectionTradeEntry>0 && Ask<maprice && (maprice-Ask)>=Value*_Point && (maprice-Ask)<=(double)Value*LimitTradeZone*_Point && Open[3]<Close[3] && Open[2]<Close[2] && Open[1]<Close[1] && Volume[3]>CorrectionTradeEntry && Volume[2]>CorrectionTradeEntry && Volume[1]>CorrectionTradeEntry && Close[1]<Ask) { if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Ask>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Ask<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && (GPLOOT_trouble==0 || GPLOOT_trouble!=0) && GPLOOT_send==0) {if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} // Start trading by default } else if(cn==0 && PriceLowMA_Buy==true && CorrectionTradeEntry>0 && Bid>maprice && (Bid-maprice)>=Value*_Point && (Bid-maprice)<=(double)Value*LimitTradeZone*_Point && Open[3]>Close[3] && Open[2]>Close[2] && Open[1]>Close[1] && Volume[3]>CorrectionTradeEntry && Volume[2]>CorrectionTradeEntry && Volume[1]>CorrectionTradeEntry && Close[1]>Bid) { if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Bid>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Bid<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && (GPLOOT_trouble==0 || GPLOOT_trouble!=0) && GPLOOT_send==0) {if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} // Start trading by default } else if(cn==0 && PriceLowMA_Buy==false && CorrectionTradeEntry==0 && Ask>maprice && (Ask-maprice)<=Value*_Point) { if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Ask>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Ask<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && (GPLOOT_trouble==0 || GPLOOT_trouble!=0) && GPLOOT_send==0) {if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} // Start trading by default } else if(cn==0 && PriceLowMA_Buy==false && CorrectionTradeEntry==0 && Bid<maprice && (maprice-Bid)<=Value*_Point) { if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Bid>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Bid<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && (GPLOOT_trouble==0 || GPLOOT_trouble!=0) && GPLOOT_send==0) {if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} // Start trading by default } else if(cn==0 && PriceLowMA_Buy==false && CorrectionTradeEntry>0 && Ask>maprice && (Ask-maprice)<=Value*_Point && Open[3]<Close[3] && Open[2]<Close[2] && Open[1]<Close[1] && Volume[3]>CorrectionTradeEntry && Volume[2]>CorrectionTradeEntry && Volume[1]>CorrectionTradeEntry && Close[1]<Ask) { if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Ask>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(1); CountTrades();} else if( StopLossTrading==true) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Ask<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && (GPLOOT_trouble==0 || GPLOOT_trouble!=0) && GPLOOT_send==0) {if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(0); onlybuy=1; CountTrades();}} // Start trading by default } else if(cn==0 && PriceLowMA_Buy==false && CorrectionTradeEntry>0 && Bid<maprice && (maprice-Bid)<=Value*_Point && Open[3]>Close[3] && Open[2]>Close[2] && Open[1]>Close[1] && Volume[3]>CorrectionTradeEntry && Volume[2]>CorrectionTradeEntry && Volume[1]>CorrectionTradeEntry && Close[1]>Bid) { if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Bid>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true) {send_sl(1); onlysell=1; CountTrades();}} else if(cn==0 && GPLOOT_trouble==0 && GPLOOT_send==0 && Bid<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) {Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); if(StopLossTrading==false) {send(0); CountTrades();} else if(StopLossTrading==true) {send_sl(0); onlybuy=1; CountTrades();}} else if(cn==0 && (GPLOOT_trouble==0 || GPLOOT_trouble!=0) && GPLOOT_send==0) {if(StopLossTrading==false) {send(1); CountTrades();} else if(StopLossTrading==true && MaPeriod>0) {send_sl(1); onlysell=1; CountTrades();}} // Start trading by default } } } //+------------------------------------------------------------------+ //| Deposit Saving for 1 order trading mode | //+------------------------------------------------------------------+ if(locktrade==0 && OneOrderTrading==true && FoxTrading==false && StopLossTrading==false && cn==1 && lisa==0 && cn_ds==0 && DepositSaving==true && op<=StartMoneyOnDeposit*FreightPercent/100/(-100/(DepositSavingPercent*(1-0.1)))) { if(Ask>Close[1]) send_ds(0); else if(Close[1]>Bid) send_ds(1); } //+------------------------------------------------------------------+ //| DS_Reverse for trading 1 order | //+------------------------------------------------------------------+ if(locktrade==0 && OneOrderTrading==true && StopLossTrading==false) { if(FoxTrading==false && cn==2 && lisa==0 && cn_ds>0 && DepositSaving==true && DS_Reverse==true && cn_ds<=DS_CountReverse) { for(i_=0; i_<=DS_CountReverse; i_++) { int flot=FindLastOrderType(); if(flot==0 && LastBuyPrice()-Ask>=DS_ReverseStep*_Point) { close_ds(0); send_ds(1); } if(flot==1 && Bid-LastSellPrice()>=DS_ReverseStep*_Point) { close_ds(1); send_ds(0); } } } //+------------------------------------------------------------------+ //| Completion of Deposit Saving | //+------------------------------------------------------------------+ if(FoxTrading==false && StopLossTrading==false && cn==2 && lisa==0 && DepositSaving==true && cn_ds>0 && DS_PaymentsForRisk==true) { if((PipsTrading==false && op>=(TakeProfit+cn_ds*DS_PaymentsSize)) || (PipsTrading==true && op>=(TakeProfit+cn_ds*DS_PaymentsSize)*_Point)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} cn_ds=0; i_=0; GPLOOT_trouble=0; GPLOOT_send=0; } } else if(FoxTrading==false && StopLossTrading==false && cn==2 && lisa==0 && DepositSaving==true && cn_ds>0 && DS_PaymentsForRisk==false) { if((PipsTrading==false && op>=TakeProfit) || (PipsTrading==true && op>=TakeProfit*_Point)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} cn_ds=0; i_=0; GPLOOT_trouble=0; GPLOOT_send=0; } } if(FoxTrading==false && StopLossTrading==false && cn==2 && lisa==0 && DepositSaving==true && DS_Reverse==true && cn_ds==(DS_CountReverse+1) && op<=StartMoneyOnDeposit*FreightPercent/100/(-100/DepositSavingPercent)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving завершён в результате контр-движения рынка");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving als Folge von Gegenmarktbewegungen abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completed as a result of counter-market movement");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving achevé à la suite d'un mouvement de contre-marché");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato a seguito di movimenti controcommerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado como resultado del movimiento de contra-mercado");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kama matokeo ya harakati za kukabiliana na soko");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving karş1 pazar hareketi sonucunda tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving завершён в результате контр-движения рынка."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving als Folge von Gegenmarktbewegungen abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completed as a result of counter-market movement."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving achevé à la suite d'un mouvement de contre-marché."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato a seguito di movimenti controcommerciali."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado como resultado del movimiento de contra-mercado."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kama matokeo ya harakati za kukabiliana na soko."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving karş1 pazar hareketi sonucunda tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} cn_ds=0; i_=0; GPLOOT_trouble=0; GPLOOT_send=0; } else if(FoxTrading==false && StopLossTrading==false && cn==2 && lisa==0 && DepositSaving==true && DS_Reverse==false && cn_ds==1 && op<=StartMoneyOnDeposit*FreightPercent/100/(-100/DepositSavingPercent)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving завершён в результате контр-движения рынка");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving als Folge von Gegenmarktbewegungen abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completed as a result of counter-market movement");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving achevé à la suite d'un mouvement de contre-marché");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato a seguito di movimenti controcommerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado como resultado del movimiento de contra-mercado");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kama matokeo ya harakati za kukabiliana na soko");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving karş1 pazar hareketi sonucunda tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving завершён в результате контр-движения рынка."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving als Folge von Gegenmarktbewegungen abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completed as a result of counter-market movement."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving achevé à la suite d'un mouvement de contre-marché."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato a seguito di movimenti controcommerciali."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado como resultado del movimiento de contra-mercado."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kama matokeo ya harakati za kukabiliana na soko."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving karş1 pazar hareketi sonucunda tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} cn_ds=0; GPLOOT_trouble=0; GPLOOT_send=0; } //+------------------------------------------------------------------+ //| Emergency Closure for trading 1 order | //+------------------------------------------------------------------+ if(FoxTrading==false && EmergencyClosurePercent<100 && StopLossTrading==false && cn==1 && DepositSaving==false) { if(op<=AccountBalance()*FreightPercent/100/(-100/EmergencyClosurePercent)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure завершён в результате контр-движения рынка");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure als Folge von Gegenmarktbewegungen abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completed as a result of counter-market movement");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure achevé à la suite d'un mouvement de contre-marché");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completato a seguito di movimenti controcommerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completado como resultado del movimiento de contra-mercado");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure kukamilika kama matokeo ya harakati za kukabiliana na soko");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure karş1 pazar hareketi sonucunda tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure завершён в результате контр-движения рынка."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure als Folge von Gegenmarktbewegungen abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completed as a result of counter-market movement."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure achevé à la suite d'un mouvement de contre-marché."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completato a seguito di movimenti controcommerciali."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completado como resultado del movimiento de contra-mercado."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure kukamilika kama matokeo ya harakati za kukabiliana na soko."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure karş1 pazar hareketi sonucunda tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} if(EmergencyRemove==true) ExpertRemove(); // Снять советник с графика GPLOOT_trouble=0; GPLOOT_send=0; } } } //+------------------------------------------------------------------+ //| Trade counter orders | //+------------------------------------------------------------------+ if(locktrade==0 && OneOrderTrading==false && FoxTrading==false && StopLossTrading==false && lisa==0) { //+------------------------------------------------------------------+ //| If 1 order is opened, open the counter order | //+------------------------------------------------------------------+ if(cn==1 && cn_ds==0 && CountBuy()==1 && CountSell()==0) { if(LastBuyPrice()-Ask>=Step*_Point) { send(1); } } else if(cn==1 && cn_ds==0 && CountBuy()==0 && CountSell()==1) { if(Bid-LastSellPrice()>=Step*_Point) { send(0); } } //+------------------------------------------------------------------+ //| If 2 open orders are open and GeoPriceLocation = true | //+------------------------------------------------------------------+ if(cn==2 && GeoPriceLocation==true && cn_ds==0 && CountBuy()==1 && CountSell()==1 && FindLastOrderType()==OP_SELL) { if(LastSellPrice()-Bid>=Step*_Point && GPL_trouble==0) { if(Bid<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) { Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); send(0); } else { send(1); } } else if(Bid-LastSellPrice()>=Step*_Point && GPL_trouble==0) { if(Bid>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) { Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); send(1); } else { send(0); } } } else if(cn==2 && GeoPriceLocation==true && cn_ds==0 && CountBuy()==1 && CountSell()==1 && FindLastOrderType()==OP_BUY) { if(Ask-LastBuyPrice()>=Step*_Point && GPL_trouble==0) { if(Ask>NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) { Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); send(1); } else { send(0); } } else if(LastBuyPrice()-Ask>=Step*_Point && GPL_trouble==0) { if(Ask<NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) { Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)); send(0); } else { send(1); } } } //+------------------------------------------------------------------+ //| If 2 orders are open and GeoPriceLocation = false | //+------------------------------------------------------------------+ if(cn==2 && (GeoPriceLocation==false || GPL_trouble>0) && cn_ds==0 && CountBuy()==1 && CountSell()==1 && FindLastOrderType()==OP_SELL) { if(LastSellPrice()-Bid>=Step*_Point) { send(1); GPL_trouble=0; } else if(Bid-LastSellPrice()>=Step*_Point) { send(0); GPL_trouble=0; } } else if(cn==2 && (GeoPriceLocation==false || GPL_trouble>0) && cn_ds==0 && CountBuy()==1 && CountSell()==1 && FindLastOrderType()==OP_BUY) { if(Ask-LastBuyPrice()>=Step*_Point) { send(0); GPL_trouble=0; } else if(LastBuyPrice()-Ask>=Step*_Point) { send(1); GPL_trouble=0; } } //+------------------------------------------------------------------+ //| Deposit Saving to trade counter orders | //+------------------------------------------------------------------+ if(cn==3 && cn_ds==0 && DepositSaving==true && op<=StartMoneyOnDeposit*FreightPercent/100/(-100/(DepositSavingPercent*(1-0.1)))) { if(Ask>Close[1]) send_ds(0); else if(Close[1]>Bid) send_ds(1); } //+------------------------------------------------------------------+ //| DS_Reverse to trade counter orders | //+------------------------------------------------------------------+ if(cn==4 && cn_ds>0 && DepositSaving==true && DS_Reverse==true && cn_ds<=DS_CountReverse) { for(k_=0; k_<=DS_CountReverse; k_++) { int flot=FindLastOrderType(); if(flot==0 && LastBuyPrice()-Ask>=DS_ReverseStep*_Point) { close_ds(0); send_ds(1); } if(flot==1 && Bid-LastSellPrice()>=DS_ReverseStep*_Point) { close_ds(1); send_ds(0); } } } //+------------------------------------------------------------------+ //| Completion of Deposit Saving | //+------------------------------------------------------------------+ if(cn==4 && cn_ds>0 && DS_PaymentsForRisk==true) { if((PipsTrading==false && op>=(TakeProfit+cn_ds*DS_PaymentsSize)) || (PipsTrading==true && op>=(TakeProfit+cn_ds*DS_PaymentsSize)*_Point)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} cn_ds=0; k_=0; GPL_trouble=0; } } else if(cn==4 && cn_ds>0 && DS_PaymentsForRisk==false) { if((PipsTrading==false && op>=TakeProfit) || (PipsTrading==true && op>=TakeProfit*_Point)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} cn_ds=0; k_=0; GPL_trouble=0; } } if(cn==4 && DepositSaving==true && DS_Reverse==true && cn_ds==(DS_CountReverse+1) && op<=StartMoneyOnDeposit*FreightPercent/100/(-100/DepositSavingPercent)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving завершён в результате контр-движения рынка");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving als Folge von Gegenmarktbewegungen abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completed as a result of counter-market movement");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving achevé à la suite d'un mouvement de contre-marché");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato a seguito di movimenti controcommerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado como resultado del movimiento de contra-mercado");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kama matokeo ya harakati za kukabiliana na soko");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving karş1 pazar hareketi sonucunda tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving завершён в результате контр-движения рынка."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving als Folge von Gegenmarktbewegungen abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completed as a result of counter-market movement."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving achevé à la suite d'un mouvement de contre-marché."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato a seguito di movimenti controcommerciali."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado como resultado del movimiento de contra-mercado."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kama matokeo ya harakati za kukabiliana na soko."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving karş1 pazar hareketi sonucunda tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} cn_ds=0; k_=0; GPL_trouble=0; } else if(cn==4 && DepositSaving==true && DS_Reverse==false && cn_ds==1 && op<=StartMoneyOnDeposit*FreightPercent/100/(-100/DepositSavingPercent)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving завершён в результате контр-движения рынка");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving als Folge von Gegenmarktbewegungen abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completed as a result of counter-market movement");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving achevé à la suite d'un mouvement de contre-marché");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato a seguito di movimenti controcommerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado como resultado del movimiento de contra-mercado");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kama matokeo ya harakati za kukabiliana na soko");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving karş1 pazar hareketi sonucunda tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving завершён в результате контр-движения рынка."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving als Folge von Gegenmarktbewegungen abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completed as a result of counter-market movement."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving achevé à la suite d'un mouvement de contre-marché."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato a seguito di movimenti controcommerciali."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado como resultado del movimiento de contra-mercado."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kama matokeo ya harakati za kukabiliana na soko."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving karş1 pazar hareketi sonucunda tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} cn_ds=0; GPL_trouble=0; } //+------------------------------------------------------------------+ //| Emergency Closure to trade counter orders | //+------------------------------------------------------------------+ if(cn==3 && EmergencyClosurePercent<100 && DepositSaving==false) { if(op<=AccountBalance()*FreightPercent/100/(-100/EmergencyClosurePercent)) { CloseAll(); GPL_trouble=0; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure завершён в результате контр-движения рынка");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure als Folge von Gegenmarktbewegungen abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completed as a result of counter-market movement");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure achevé à la suite d'un mouvement de contre-marché");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completato a seguito di movimenti controcommerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completado como resultado del movimiento de contra-mercado");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure kukamilika kama matokeo ya harakati za kukabiliana na soko");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure karş1 pazar hareketi sonucunda tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure завершён в результате контр-движения рынка."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure als Folge von Gegenmarktbewegungen abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completed as a result of counter-market movement."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure achevé à la suite d'un mouvement de contre-marché."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completato a seguito di movimenti controcommerciali."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completado como resultado del movimiento de contra-mercado."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure kukamilika kama matokeo ya harakati za kukabiliana na soko."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure karş1 pazar hareketi sonucunda tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} if(EmergencyRemove==true) ExpertRemove(); // Снять советник с графика } } } //+------------------------------------------------------------------+ //| Profit taking for OneOrderTrading true / false | //+------------------------------------------------------------------+ if(FoxTrading==false && StopLossTrading==false && ((OneOrderTrading==true && cn==1) || (OneOrderTrading==false && cn<=3)) && cn_ds==0 && lisa==0) { if((PipsTrading==false && op>=TakeProfit) || (PipsTrading==true && op>=TakeProfit*_Point)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Советник зафиксировал прибыль и закрыл позиции");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Berater nehmen Gewinn und geschlossene Positionen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor take profit and closed positions");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Le conseiller prend des bénéfices et ferme des positions");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor prendere profitto e posizioni chiuse");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Asesora con toma de ganancias y posiciones cerradas");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Mshauri hupata faida na nafasi zilizofungwa");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Dan1şman kar ve kapal1 pozisyon almak");} if(TakeProfitSendMail==true) {if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Советник зафиксировал прибыль и закрыл позиции."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Berater nehmen Gewinn und geschlossene Positionen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor take profit and closed positions."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Le conseiller prend des bénéfices et ferme des positions."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor prendere profitto e posizioni chiuse."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Asesora con toma de ganancias y posiciones cerradas."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Mshauri hupata faida na nafasi zilizofungwa."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Dan1şman kar ve kapal1 pozisyon almak."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));}} GPL_trouble=0; GPLOOT_trouble=0; GPLOOT_send=0; } } //+------------------------------------------------------------------+ //| FoxTrading Trading Mode Description | //+------------------------------------------------------------------+ if(locktrade==0 && FoxTrading==true && (lisa==0 || lisa==1) && (PipsTrading==false || PipsTrading==true)) { //+------------------------------------------------------------------+ //| Zeroing the counters to resume trading | //+------------------------------------------------------------------+ if(cn==0) closerlock=0; if(buy==FoxSeries && sell==FoxSeries) {buy=0; sell=0;} //+------------------------------------------------------------------+ //| Start trading with GeoPriceLocation support | //+------------------------------------------------------------------+ if(GeoPriceLocation==true && cn==0 && buy<FoxSeries && Ask<NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) { send_fox(0); CountTrades(); buy+=1; } else if(GeoPriceLocation==true && cn==0 && buy<FoxSeries && Ask>=NormalizeDouble(HighPrice-(HighPrice-LowPrice)/GPL_CountLevels,Digits)) { Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)+" ^^"); send_fox(1); CountTrades(); buy+=1; } else if(GeoPriceLocation==true && cn==0 && buy==FoxSeries && sell<FoxSeries && Bid>NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) { send_fox(1); CountTrades(); sell+=1; } else if(GeoPriceLocation==true && cn==0 && buy==FoxSeries && sell<FoxSeries && Bid<=NormalizeDouble(LowPrice+(HighPrice-LowPrice)/GPL_CountLevels,Digits)) { Print("MAGIC "+IntegerToString(Magic)+":"+" GeoPriceLocation: "+"HighPrice: "+DoubleToString(HighPrice,Digits)+" LowPrice: "+DoubleToString(LowPrice,Digits)+" ^^"); send_fox(0); CountTrades(); sell+=1; } //+------------------------------------------------------------------+ //| Start trading without GeoPriceLocation | //+------------------------------------------------------------------+ if(GeoPriceLocation==false && cn==0 && buy<FoxSeries){send_fox(0); buy+=1;} else if(GeoPriceLocation==false && cn==0 && buy==FoxSeries && sell<FoxSeries) {send_fox(1); sell+=1;} //+------------------------------------------------------------------+ //| Deposit Saving | //+------------------------------------------------------------------+ if(cn==1 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentA)) {send_fox(1); buy=FoxSeries;} else if(cn==1 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentA)) {send_fox(0); sell=FoxSeries;} if(cn==2 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentB)) {send_fox(1); buy=FoxSeries;} else if(cn==2 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentB)) {send_fox(0); sell=FoxSeries;} if(cn==3 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentC)) {send_fox(1); buy=FoxSeries;} else if(cn==3 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentC)) {send_fox(0); sell=FoxSeries;} if(cn==4 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentD)) {send_fox(1); buy=FoxSeries;} else if(cn==4 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentD)) {send_fox(0); sell=FoxSeries;} if(cn==5 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentE)) {send_fox(1); buy=FoxSeries;} else if(cn==5 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentE)) {send_fox(0); sell=FoxSeries;} if(cn==6 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentF)) {send_fox(1); buy=FoxSeries;} else if(cn==6 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentF)) {send_fox(0); sell=FoxSeries;} if(cn==7 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentG)) {send_fox(1); buy=FoxSeries;} else if(cn==7 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentG)) {send_fox(0); sell=FoxSeries;} if(cn==8 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentH)) {send_fox(1); buy=FoxSeries;} else if(cn==8 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentH)) {send_fox(0); sell=FoxSeries;} if(cn==9 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentI)) {send_fox(1); buy=FoxSeries;} else if(cn==9 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentI)) {send_fox(0); sell=FoxSeries;} if(cn==10 && DepositSaving==true && FindLastOrderType()==OP_BUY && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentJ)) {send_fox(1); buy=FoxSeries;} else if(cn==10 && DepositSaving==true && FindLastOrderType()==OP_SELL && op<AccountBalance()*FreightPercent/100/(-100/DS_PercentJ)) {send_fox(0); sell=FoxSeries;} //+------------------------------------------------------------------+ //| Profit taking for FoxTrading | //+------------------------------------------------------------------+ if(cn==1 && closerlock==0) { if((PipsTrading==false && op>TakeProfit) || (PipsTrading==true && op>TakeProfit*_Point)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Советник зафиксировал прибыль и закрыл позиции ^^");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Berater nehmen Gewinn und geschlossene Positionen ^^");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor take profit and closed positions ^^");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Le conseiller prend des bénéfices et ferme des positions ^^");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor prendere profitto e posizioni chiuse ^^");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Asesora con toma de ganancias y posiciones cerradas ^^");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Mshauri hupata faida na nafasi zilizofungwa ^^");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Dan1şman kar ve kapal1 pozisyon almak ^^");} if(TakeProfitSendMail==true) {if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Советник зафиксировал прибыль и закрыл позиции ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Berater nehmen Gewinn und geschlossene Positionen ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor take profit and closed positions ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Le conseiller prend des bénéfices et ferme des positions ^^."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor prendere profitto e posizioni chiuse ^^."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Asesora con toma de ganancias y posiciones cerradas ^^."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Mshauri hupata faida na nafasi zilizofungwa ^^."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Dan1şman kar ve kapal1 pozisyon almak ^^."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));}} FoxGPL_trouble=0; FoxGPL_send=0; } } else if(cn>1 && closerlock==0) { if((PipsTrading==false && op>TakeProfit) || (PipsTrading==true && op>TakeProfit*_Point)) { CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён ^^");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen ^^");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed ^^");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès ^^");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo ^^");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito ^^");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio ^^");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1 ^^");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving успешно завершён ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving erfolgreich abgeschlossen ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving successfully completed ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving complété avec succès ^^."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completato con successo ^^."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving completado con éxito ^^."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving kukamilika kwa mafanikio ^^."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving başar1yla tamamland1 ^^."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} FoxGPL_trouble=0; FoxGPL_send=0; } } //+------------------------------------------------------------------+ //| Emergency Closure for FoxTrading | //+------------------------------------------------------------------+ if(cn==1 && EmergencyClosurePercent<100 && DepositSaving==false && op<=AccountBalance()*FreightPercent/100/(-100/EmergencyClosurePercent)) { closerlock=1; if(FindLastOrderType()==OP_BUY) {buy=FoxSeries;} else if(FindLastOrderType()==OP_SELL) {sell=FoxSeries;} CloseAll(); FoxGPL_trouble=0; FoxGPL_send=0; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure завершён в результате контр-движения рынка ^^");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure als Folge von Gegenmarktbewegungen abgeschlossen ^^");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completed as a result of counter-market movement ^^");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure achevé à la suite d'un mouvement de contre-marché ^^");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completato a seguito di movimenti controcommerciali ^^");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completado como resultado del movimiento de contra-mercado ^^");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure kukamilika kama matokeo ya harakati za kukabiliana na soko ^^");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure karş1 pazar hareketi sonucunda tamamland1 ^^");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure завершён в результате контр-движения рынка ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure als Folge von Gegenmarktbewegungen abgeschlossen ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completed as a result of counter-market movement ^^."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure achevé à la suite d'un mouvement de contre-marché ^^."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completato a seguito di movimenti controcommerciali ^^."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completado como resultado del movimiento de contra-mercado ^^."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure kukamilika kama matokeo ya harakati za kukabiliana na soko ^^."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure karş1 pazar hareketi sonucunda tamamland1 ^^."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} if(EmergencyRemove==true) ExpertRemove(); // Снять советник с графика } } //+------------------------------------------------------------------+ //| Description of the trading mode StopLossTrading | //+------------------------------------------------------------------+ if(locktrade==0 && StopLossTrading==true && FoxTrading==false && lisa==0) { //+------------------------------------------------------------------+ //| Start without indicator trading mode (MaPeriod == 0) | //+------------------------------------------------------------------+ if(locktrade==0 && cn==0 && Close[5]<Close[1] && Close[1]<Ask && MaPeriod==0) {send_sl(0); onlybuy=1;} else if(locktrade==0 && cn==0 && Close[5]>Close[1] && Close[1]>Bid && MaPeriod==0) {send_sl(1); onlysell=1;} if(FindLastOrderType()==OP_BUY && cn>0 && cn<CountOrders && Ask-LastBuyPrice()>=Step*_Point && Value==0) send_sl(0); else if(FindLastOrderType()==OP_BUY && cn>0 && cn<CountOrders && LastBuyPrice()-Ask>=Step*_Point && Value==0) send_sl(1); if(FindLastOrderType()==OP_SELL && cn>0 && cn<CountOrders && Bid-LastSellPrice()>=Step*_Point && Value==0) send_sl(0); else if(FindLastOrderType()==OP_SELL && cn>0 && cn<CountOrders && LastSellPrice()-Bid>=Step*_Point && Value==0) send_sl(1); if(onlybuy==1 && cn>0 && cn<CountOrders && Ask-LastBuyPrice()>=Step*_Point && Value>0) send_sl(0); else if(onlysell==1 && cn>0 && cn<CountOrders && LastSellPrice()-Bid>=Step*_Point && Value>0) send_sl(1); //+------------------------------------------------------------------+ //| Modification StopLoss | //+------------------------------------------------------------------+ if(locktrade==0 && cn>0 && cn<=CountOrders && TrailingStop>0) { Trailing(); } //+------------------------------------------------------------------+ //| Profit-taking for StopLossTrading | //+------------------------------------------------------------------+ if(cn>0 && cn<=CountOrders && closerlock==0) { if((PipsTrading==false && op>TakeProfit) || (PipsTrading==true && op>TakeProfit*_Point)) { closerlock=1; CloseAll(); if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Советник зафиксировал прибыль и закрыл позиции");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Berater nehmen Gewinn und geschlossene Positionen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor take profit and closed positions");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Le conseiller prend des bénéfices et ferme des positions");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Advisor prendere profitto e posizioni chiuse");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Asesora con toma de ganancias y posiciones cerradas");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Mshauri hupata faida na nafasi zilizofungwa");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Dan1şman kar ve kapal1 pozisyon almak");} if(TakeProfitSendMail==true) {if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Советник зафиксировал прибыль и закрыл позиции."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Berater nehmen Gewinn und geschlossene Positionen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor take profit and closed positions."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Le conseiller prend des bénéfices et ferme des positions."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Advisor prendere profitto e posizioni chiuse."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Asesora con toma de ganancias y posiciones cerradas."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Mshauri hupata faida na nafasi zilizofungwa."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Dan1şman kar ve kapal1 pozisyon almak."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));}} GPLOOT_trouble=0; GPLOOT_send=0; } } //+------------------------------------------------------------------+ //| Emergency Closure for StopLossTrading | //+------------------------------------------------------------------+ if(cn>0 && EmergencyClosurePercent<100 && closerlock==0) { if(op<=AccountBalance()*FreightPercent/100/(-100/EmergencyClosurePercent)) { closerlock=1; CloseAll(); GPL_trouble=0; GPLOOT_send=0; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure завершён в результате контр-движения рынка");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure als Folge von Gegenmarktbewegungen abgeschlossen");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completed as a result of counter-market movement");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure achevé à la suite d'un mouvement de contre-marché");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completato a seguito di movimenti controcommerciali");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completado como resultado del movimiento de contra-mercado");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure kukamilika kama matokeo ya harakati za kukabiliana na soko");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure karş1 pazar hareketi sonucunda tamamland1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure завершён в результате контр-движения рынка."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure als Folge von Gegenmarktbewegungen abgeschlossen."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completed as a result of counter-market movement."+" EXPERT PROFIT (ph): "+DoubleToString(ph,2));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure achevé à la suite d'un mouvement de contre-marché."+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completato a seguito di movimenti controcommerciali."+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure completado como resultado del movimiento de contra-mercado."+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure kukamilika kama matokeo ya harakati za kukabiliana na soko."+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Emergency Closure karş1 pazar hareketi sonucunda tamamland1."+" UZMANLIK KAR (ph): "+DoubleToString(ph,2));} if(EmergencyRemove==true) ExpertRemove(); // Снять советник с графика } } } //+-----------------------------------------------------------------------+ //| For all trading modes: Displaying information on the chart | //+-----------------------------------------------------------------------+ if(locktrade==0 && lisa==0) ShowInfoOne(); else if(locktrade==0 && lisa==1) ShowInfoTwo(); else if(locktrade==1 && spread==1) ShowInfoThree(); else if(locktrade==1 && moneyback==1) ShowInfoFour(); } //+-----------------------------------------------------------------------+ //| L I S T O F F U N C T I O N S B L A C K J A C K & H O O K E R S | //+-----------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| The number of open OP_BUY and OP_SELL | //+------------------------------------------------------------------+ int CountTrades() { int count=0; for(int i=OrdersTotal()-1; i>=0; i--) { if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic) if(OrderType()<=OP_SELL) count++; } return (count); } //+------------------------------------------------------------------+ //| Profit / loss of open OP_BUY and OP_SELL | //+------------------------------------------------------------------+ double CalculateProfit() { double oprofit=0; for(int i=OrdersTotal()-1; i>=0; i--) { if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic) if(OrderType()<=OP_SELL && SwapAndComissions==true) oprofit+=OrderProfit()+OrderSwap()+OrderCommission(); else if(OrderType()<=OP_SELL && SwapAndComissions==false) oprofit+=OrderProfit(); } return (oprofit); } //+------------------------------------------------------------------+ //| Profit / loss of closed OP_BUY and OP_SELL | //+------------------------------------------------------------------+ double CalculateProfitHistory() { double profithistory=0; for(int i=OrdersHistoryTotal()-1; i>=0; i--) { if(!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) continue; if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic) if(OrderType()<=OP_SELL && SwapAndComissions==true) profithistory+=OrderProfit()+OrderSwap()+OrderCommission(); else if(OrderType()<=OP_SELL && SwapAndComissions==false) profithistory+=OrderProfit(); } return (profithistory); } //+------------------------------------------------------------------+ //| The number of closed OP_BUY and OP_SELL | //+------------------------------------------------------------------+ int CountTradesHistory() { int count=0; for(int i=OrdersHistoryTotal()-1; i>=0; i--) { if(!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) continue; if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic) if(OrderType()<=OP_SELL) count++; } return (count); } //+------------------------------------------------------------------+ //| Last open price OP_BUY | //+------------------------------------------------------------------+ double LastBuyPrice() { int oldticket,ticket=0; double oldopenprice=0; for(int cnt=OrdersTotal()-1; cnt>=0; cnt--) { if(!OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic && OrderType()==OP_BUY) { oldticket=OrderTicket(); if(oldticket>ticket) { ticket=oldticket; oldopenprice=OrderOpenPrice(); } } } return(oldopenprice); } //+------------------------------------------------------------------+ //| Last open price OP_SELL | //+------------------------------------------------------------------+ double LastSellPrice() { int oldticket,ticket=0; double oldopenprice=0; for(int cnt=OrdersTotal()-1; cnt>=0; cnt--) { if(!OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic && OrderType()==OP_SELL) { oldticket=OrderTicket(); if(oldticket>ticket) { ticket=oldticket; oldopenprice=OrderOpenPrice(); } } } return(oldopenprice); } //+------------------------------------------------------------------+ //| Close all OP_BUY and OP_SELL | //+------------------------------------------------------------------+ void CloseAll() { bool x; for(int i=OrdersTotal()-1; i>=0; i--) { if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderSymbol()!=_Symbol || OrderMagicNumber()!=Magic) continue; if(OrderType()<=OP_SELL) x=OrderClose(OrderTicket(),OrderLots(),(!OrderType()?Bid:Ask),Slippage); } } //+------------------------------------------------------------------+ //| Open OP_BUY or OP_SELL | //+------------------------------------------------------------------+ void send(int oper) { double fmc=AccountFreeMarginCheck(_Symbol,oper,Lot); if(fmc>=0) { if(LotMultiplier!=0) ticket_s=OrderSend(_Symbol,oper,Lot*(1+cn*LotMultiplier),!oper ? Ask:Bid,Slippage,0,0,"",Magic,0,!oper ? Blue:Red); else if(LotMultiplier==false_) ticket_s=OrderSend(_Symbol,oper,Lot,!oper ? Ask:Bid,Slippage,0,0,"",Magic,0,!oper ? Blue:Red); if(ticket_s<1) { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не удалось открыть ордер на "+(!oper ? "покупку":"продажу"));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Bestellung konnte nicht geöffnet werden "+(!oper ? "kaufen":"verkaufen"));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Could not open order for "+(!oper ? "buy":"sell"));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossible d'ouvrir la commande pour "+(!oper ? "acheter":"vendre"));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossibile aprire l'ordine per "+(!oper ? "acquistare":"vendere"));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No se pudo abrir la orden para "+(!oper ? "comprar":"vender"));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufungua mpangilio "+(!oper ? "kununua":"kuuza"));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" İçin sipariş aç1lamad1 "+(!oper ? "sat1n almak":"satmak"));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не удалось открыть ордер на "+(!oper ? "покупку.":"продажу.")+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Bestellung konnte nicht geöffnet werden "+(!oper ? "kaufen.":"verkaufen.")+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Could not open order for "+(!oper ? "buy.":"sell.")+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossible d'ouvrir la commande pour "+(!oper ? "acheter.":"vendre.")+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossibile aprire l'ordine per "+(!oper ? "acquistare.":"vendere")+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No se pudo abrir la orden para "+(!oper ? "comprar.":"vender.")+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufungua mpangilio "+(!oper ? "kununua.":"kuuza.")+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" İçin sipariş aç1lamad1 "+(!oper ? "sat1n almak.":"satmak.")+" Hata kodu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } else if(ticket_s>1 && FoxTrading==false && GeoPriceLocation==true && OneOrderTrading==true) { cn=CountTrades(); if(cn==1) {GPLOOT_send=1;} } } else if(fmc<0 && notmoney==0) { notmoney=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не хватает средств для "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Nicht genug Geld für "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Not enough money for "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Pas assez d’argent pour "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Non abbastanza soldi per "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No hay suficiente dinero para "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Si fedha za kutosha kwa "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" İçin yeterli para yok "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Hata kodu: "+IntegerToString(GetLastError()));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не хватает средств для "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Nicht genug Geld für "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Not enough money for "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Pas assez d’argent pour "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Non abbastanza soldi per "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No hay suficiente dinero para "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Si fedha za kutosha kwa "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" İçin yeterli para yok "+(!oper ? "Buy ":"Sell ")+DoubleToString(Lot,2)+" "+_Symbol+" Hata kodu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } if(fmc>=0 && notmoney==1) notmoney=0; } //+------------------------------------------------------------------+ //| Open OP_BUY or OP_SELL for StopLossTrading | //+------------------------------------------------------------------+ void send_sl(int oper_sl) { if(LotMultiplier==false_ || (LotMultiplier!=0 && cn==0)) sl_lot=Lot; else if(LotMultiplier!=0 && cn>0) sl_lot=Lot*(1+cn*LotMultiplier); if(sl_lot>SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX)) sl_lot=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX); double fmc_sl=AccountFreeMarginCheck(_Symbol,oper_sl,sl_lot); double SL_BUY=NormalizeDouble(Bid-StopLoss*_Point,Digits); double SL_SELL=NormalizeDouble(Ask+StopLoss*_Point,Digits); if(fmc_sl>=0) { if(StopLoss>0) { ticket_sl=OrderSend(_Symbol,oper_sl,sl_lot,!oper_sl ? Ask:Bid,Slippage,!oper_sl ? SL_BUY:SL_SELL,0,"",Magic,0,!oper_sl ? Blue:Red); } else if(StopLoss==0) { ticket_sl=OrderSend(_Symbol,oper_sl,sl_lot,!oper_sl ? Ask:Bid,Slippage,0,0,"",Magic,0,!oper_sl ? Blue:Red); } if(ticket_sl<1) { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не удалось открыть ордер на "+(!oper_sl ? "покупку":"продажу"));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Bestellung konnte nicht geöffnet werden "+(!oper_sl ? "kaufen":"verkaufen"));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Could not open order for "+(!oper_sl ? "buy":"sell"));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossible d'ouvrir la commande pour "+(!oper_sl ? "acheter":"vendre"));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossibile aprire l'ordine per "+(!oper_sl ? "acquistare":"vendere"));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No se pudo abrir la orden para "+(!oper_sl ? "comprar":"vender"));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufungua mpangilio "+(!oper_sl ? "kununua":"kuuza"));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" İçin sipariş aç1lamad1 "+(!oper_sl ? "sat1n almak":"satmak"));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не удалось открыть ордер на "+(!oper_sl ? "покупку.":"продажу.")+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Bestellung konnte nicht geöffnet werden "+(!oper_sl ? "kaufen.":"verkaufen.")+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Could not open order for "+(!oper_sl ? "buy.":"sell.")+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossible d'ouvrir la commande pour "+(!oper_sl ? "acheter.":"vendre.")+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossibile aprire l'ordine per "+(!oper_sl ? "acquistare.":"vendere")+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No se pudo abrir la orden para "+(!oper_sl ? "comprar.":"vender.")+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufungua mpangilio "+(!oper_sl ? "kununua.":"kuuza.")+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" İçin sipariş aç1lamad1 "+(!oper_sl ? "sat1n almak.":"satmak.")+" Hata kodu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } else if(ticket_sl>1 && FoxTrading==false && GeoPriceLocation==true && StopLossTrading==true) { cn=CountTrades(); if(cn==1) {GPLOOT_send=1;} } } else if(fmc_sl<0 && notmoney==0) { notmoney=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не хватает средств для "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Nicht genug Geld für "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Not enough money for "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Pas assez d’argent pour "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Non abbastanza soldi per "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No hay suficiente dinero para "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Si fedha za kutosha kwa "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" İçin yeterli para yok "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Hata kodu: "+IntegerToString(GetLastError()));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не хватает средств для "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Nicht genug Geld für "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Not enough money for "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Pas assez d’argent pour "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Non abbastanza soldi per "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No hay suficiente dinero para "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Si fedha za kutosha kwa "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" İçin yeterli para yok "+(!oper_sl ? "Buy ":"Sell ")+DoubleToString(sl_lot,2)+" "+_Symbol+" Hata kodu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } if(fmc_sl>0 && notmoney==1) notmoney=0; } //+-------------------------------------------------------------------------------+ //| Open OP_BUY or OP_SELL order (include alarm order) for FoxTrading | //+-------------------------------------------------------------------------------+ void send_fox(int oper_fox) { if(cn==0 && FoxTrading==true) fox_lot=Lot; else if(cn==1 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierA; else if(cn==2 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierB; else if(cn==3 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierC; else if(cn==4 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierD; else if(cn==5 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierE; else if(cn==6 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierF; else if(cn==7 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierG; else if(cn==8 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierH; else if(cn==9 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierI; else if(cn==10 && FoxTrading==true && DepositSaving==true) fox_lot=Lot*DS_LotMultiplierJ; if(fox_lot>SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX)) fox_lot=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX); double fmc_fox=AccountFreeMarginCheck(_Symbol,oper_fox,fox_lot); if(fmc_fox>=0) { ticket_fox=OrderSend(_Symbol,oper_fox,fox_lot,!oper_fox ? Ask:Bid,Slippage,0,0,"",Magic,0,!oper_fox ? Blue:Red); if(FoxTrading==true && DepositSaving==true && ticket_fox>1) { cn=CountTrades(); for(FoxGPL_send=1; FoxGPL_send<=10; FoxGPL_send++) { if(cn==FoxGPL_send+1) { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Открыт аварийный ордер на "+(!oper_fox ? "покупку ^^":"продажу ^^"));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Notbestellung öffnen "+(!oper_fox ? "kaufen ^^":"verkaufen ^^"));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Open emergency order "+(!oper_fox ? "buy ^^":"sell ^^"));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Ordre d'urgence ouvert "+(!oper_fox ? "acheter ^^":"vendre ^^"));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Ordine di emergenza aperto "+(!oper_fox ? "acquistare ^^":"vendere ^^"));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Orden de emergencia abierta "+(!oper_fox ? "comprar ^^":"vender ^^"));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Fungua utaratibu wa dharura "+(!oper_fox ? "kununua ^^":"kuuza ^^"));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Acil durum siparişini aç "+(!oper_fox ? "sat1n almak ^^":"satmak ^^"));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Открыт аварийный ордер на "+(!oper_fox ? "покупку ^^":"продажу ^^"));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Notbestellung öffnen "+(!oper_fox ? "kaufen ^^":"verkaufen ^^"));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Open emergency order "+(!oper_fox ? "buy ^^":"sell ^^"));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Ordre d'urgence ouvert "+(!oper_fox ? "acheter ^^":"vendre ^^"));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Ordine di emergenza aperto "+(!oper_fox ? "acquistare ^^":"vendere ^^"));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Orden de emergencia abierta "+(!oper_fox ? "comprar ^^":"vender ^^"));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Fungua utaratibu wa dharura "+(!oper_fox ? "kununua ^^":"kuuza ^^"));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(FoxGPL_send)+" - Acil durum siparişini aç "+(!oper_fox ? "sat1n almak ^^":"satmak ^^"));} Sleep(10000); RefreshRates(); } } } else if(ticket_fox<1) { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не удалось открыть аварийный ордер на "+(!oper_fox ? "покупку ^^":"продажу ^^"));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Notbestellung konnte nicht geöffnet werden "+(!oper_fox ? "kaufen ^^":"verkaufen ^^"));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Could not open emergency order "+(!oper_fox ? "buy ^^":"sell ^^"));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossible d'ouvrir l'ordre d'urgence "+(!oper_fox ? "acheter ^^":"vendre ^^"));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossibile aprire l'ordine di emergenza "+(!oper_fox ? "acquistare ^^":"vendere ^^"));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No se pudo abrir la orden de emergencia "+(!oper_fox ? "comprar ^^":"vender ^^"));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufungua mpangilio wa dharura "+(!oper_fox ? "kununua ^^":"kuuza ^^"));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Acil durum düzeni aç1lamad1 "+(!oper_fox ? "sat1n almak ^^":"satmak ^^"));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не удалось открыть аварийный ордер на "+(!oper_fox ? "покупку ^^":"продажу ^^")+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Notbestellung konnte nicht geöffnet werden "+(!oper_fox ? "kaufen. ^^":"verkaufen. ^^")+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Could not open emergency order "+(!oper_fox ? "buy. ^^":"sell. ^^")+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossible d'ouvrir l'ordre d'urgence "+(!oper_fox ? "acheter. ^^":"vendre. ^^")+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossibile aprire l'ordine di emergenza "+(!oper_fox ? "acquistare. ^^":"vendere. ^^")+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No se pudo abrir la orden de emergencia "+(!oper_fox ? "comprar. ^^":"vender. ^^")+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufungua mpangilio wa dharura "+(!oper_fox ? "kununua. ^^":"kuuza. ^^")+" Msimbo wa hrror: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Acil durum düzeni aç1lamad1 "+(!oper_fox ? "sat1n almak. ^^":"satmak. ^^")+" Еrror kodu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } } else if(fmc_fox<0 && notmoney==0) { notmoney=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не хватает средств для "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Код ошибки: "+IntegerToString(GetLastError())+" ^^");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Nicht genug Geld für "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Fehlercode: "+IntegerToString(GetLastError())+" ^^");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Not enough money for "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Error code: "+IntegerToString(GetLastError())+" ^^");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Pas assez d’argent pour "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Code d'erreur: "+IntegerToString(GetLastError())+" ^^");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Non abbastanza soldi per "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Codice di errore: "+IntegerToString(GetLastError())+" ^^");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No hay suficiente dinero para "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Código de error: "+IntegerToString(GetLastError())+" ^^");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Si fedha za kutosha kwa "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Nambari ya hitilafu: "+IntegerToString(GetLastError())+" ^^");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" İçin yeterli para yok "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Hata kodu: "+IntegerToString(GetLastError())+" ^^");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не хватает средств для "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Код ошибки: "+IntegerToString(GetLastError())+" ^^");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Nicht genug Geld für "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Fehlercode: "+IntegerToString(GetLastError())+" ^^");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Not enough money for "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Error code: "+IntegerToString(GetLastError())+" ^^");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Pas assez d’argent pour "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Code d'erreur: "+IntegerToString(GetLastError())+" ^^");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Non abbastanza soldi per "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Codice di errore: "+IntegerToString(GetLastError())+" ^^");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No hay suficiente dinero para "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Código de error: "+IntegerToString(GetLastError())+" ^^");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Si fedha za kutosha kwa "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Nambari ya hitilafu: "+IntegerToString(GetLastError())+" ^^");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" İçin yeterli para yok "+(!oper_fox ? "Buy ":"Sell ")+DoubleToString(fox_lot,2)+" "+_Symbol+" Hata kodu: "+IntegerToString(GetLastError())+" ^^");} Sleep(10000); RefreshRates(); } if(fmc_fox>=0 && notmoney==1) notmoney=0; } //+-------------------------------------------------------------------------------------------------------+ //| Open alarm order for DepositSaving except FoxTrading / StopLossTrading | //+-------------------------------------------------------------------------------------------------------+ void send_ds(int oper_ds) { //+-------------------------------------------------------------------------------------------------------+ //| Calculation of the auto-lot for DepositSaving, taking into account the freight of the trading account | //+-------------------------------------------------------------------------------------------------------+ if(AccountBalance()>=StartMoneyOnDeposit) {lot_ds=NormalizeDouble((AccountFreeMargin()*FreightPercent/100*AccountLeverage()/SymbolInfoDouble(_Symbol,SYMBOL_TRADE_CONTRACT_SIZE))*DS_Risk/100*StartMoneyOnDeposit/AccountBalance(),2);} if(AccountBalance()<StartMoneyOnDeposit) {lot_ds=NormalizeDouble((AccountFreeMargin()*FreightPercent/100*AccountLeverage()/SymbolInfoDouble(_Symbol,SYMBOL_TRADE_CONTRACT_SIZE))*DS_Risk/100,2);} if(lot_ds>SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX)) {lot_ds=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX)*DS_Risk/100,2);} double fmc_ds=AccountFreeMarginCheck(_Symbol,oper_ds,lot_ds); if(fmc_ds>=0) { ticket_ds=OrderSend(_Symbol,oper_ds,lot_ds,!oper_ds ? Ask:Bid,Slippage,0,0,"",Magic,0,!oper_ds ? Blue:Red); if(ticket_ds>1) { cn_ds+=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Открыт аварийный ордер на "+(!oper_ds ? "покупку ":"продажу "));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Notbestellung öffnen "+(!oper_ds ? "kaufen ":"verkaufen "));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Open emergency order "+(!oper_ds ? "buy ":"sell "));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Ordre d'urgence ouvert "+(!oper_ds ? "acheter ":"vendre "));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Ordine di emergenza aperto "+(!oper_ds ? "acquistare ":"vendere "));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Orden de emergencia abierta "+(!oper_ds ? "comprar ":"vender "));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Fungua utaratibu wa dharura "+(!oper_ds ? "kununua ":"kuuza "));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Acil durum siparişini aç "+(!oper_ds ? "sat1n almak ":"satmak "));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Открыт аварийный ордер на "+(!oper_ds ? "покупку ":"продажу "));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Notbestellung öffnen "+(!oper_ds ? "kaufen ":"verkaufen "));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Open emergency order "+(!oper_ds ? "buy ":"sell "));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Ordre d'urgence ouvert "+(!oper_ds ? "acheter ":"vendre "));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Ordine di emergenza aperto "+(!oper_ds ? "acquistare ":"vendere "));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Orden de emergencia abierta "+(!oper_ds ? "comprar ^^":"vender ^^"));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Fungua utaratibu wa dharura "+(!oper_ds ? "kununua ":"kuuza "));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Deposit Saving #"+IntegerToString(cn_ds)+" - Acil durum siparişini aç "+(!oper_ds ? "sat1n almak ":"satmak "));} } else if(ticket_ds<1) { CloseAll(); cn_ds=0; i_=0; k_=0; GPL_trouble=0; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не удалось открыть аварийный ордер на "+(!oper_ds ? "покупку ":"продажу "));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Notbestellung konnte nicht geöffnet werden "+(!oper_ds ? "kaufen ":"verkaufen "));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Could not open emergency order "+(!oper_ds ? "buy ":"sell "));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossible d'ouvrir l'ordre d'urgence "+(!oper_ds ? "acheter ":"vendre "));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossibile aprire l'ordine di emergenza "+(!oper_ds ? "acquistare ":"vendere "));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No se pudo abrir la orden de emergencia "+(!oper_ds ? "comprar ":"vender "));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufungua mpangilio wa dharura "+(!oper_ds ? "kununua ":"kuuza "));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" Acil durum düzeni aç1lamad1 "+(!oper_ds ? "sat1n almak ":"satmak "));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не удалось открыть аварийный ордер на "+(!oper_ds ? "покупку. ":"продажу. ")+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Notbestellung konnte nicht geöffnet werden "+(!oper_ds ? "kaufen. ":"verkaufen. ")+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Could not open emergency order "+(!oper_ds ? "buy. ":"sell. ")+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossible d'ouvrir l'ordre d'urgence "+(!oper_ds ? "acheter. ":"vendre. ")+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossibile aprire l'ordine di emergenza "+(!oper_ds ? "acquistare. ":"vendere. ")+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No se pudo abrir la orden de emergencia "+(!oper_ds ? "comprar. ":"vender. ")+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufungua mpangilio wa dharura "+(!oper_ds ? "kununua. ":"kuuza. ")+" Msimbo wa hrror: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Acil durum düzeni aç1lamad1 "+(!oper_ds ? "sat1n almak. ":"satmak. ")+" Еrror kodu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } } else if(fmc_ds<0 && notmoney==0) { notmoney=1; if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не хватает средств для "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Nicht genug Geld für "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Not enough money for "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Pas assez d’argent pour "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Non abbastanza soldi per "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No hay suficiente dinero para "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Si fedha za kutosha kwa "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" İçin yeterli para yok "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Hata kodu: "+IntegerToString(GetLastError()));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не хватает средств для "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Nicht genug Geld für "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Not enough money for "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Pas assez d’argent pour "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Non abbastanza soldi per "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No hay suficiente dinero para "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Si fedha za kutosha kwa "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" İçin yeterli para yok "+(!oper_ds ? "Buy ":"Sell ")+DoubleToString(lot_ds,2)+" "+_Symbol+" Hata kodu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } if(fmc_ds>=0 && notmoney==1) notmoney=0; } //+------------------------------------------------------------------+ //| Close OP_BUY or OP_SELL alarm order for DS_Reverse | //+------------------------------------------------------------------+ void close_ds(int oper_close) { if(OrderClose(ticket_ds,lot_ds,!oper_close ? Bid:Ask,Slippage,!oper_close ? clrMediumAquamarine:clrOrchid)>0) { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - аварийный ордер на "+(!oper_close ? "покупку":"продажу")+" закрыт");} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - Notbestellung am "+(!oper_close ? "kaufen":"verkaufen")+" закрыт");} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - emergency order on "+(!oper_close ? "buy":"sell")+" is closed");} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - commande d'urgence sur "+(!oper_close ? "acheter":"vendre")+" est fermé");} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - ordine di emergenza attivato "+(!oper_close ? "acquistare":"vendere")+" è chiuso");} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - orden de emergencia en "+(!oper_close ? "comprar":"vender")+" esta cerrado");} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - utaratibu wa dharura juu "+(!oper_close ? "kununua":"kuuza")+" imefungwa");} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - acil durum emri "+(!oper_close ? "sat1n almak":"satmak")+" kapal1");} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - аварийный ордер на "+(!oper_close ? "покупку":"продажу")+" закрыт");} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - Notbestellung am "+(!oper_close ? "kaufen":"verkaufen")+" ist geschlossen");} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - emergency order on "+(!oper_close ? "buy":"sell")+" is closed");} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - commande d'urgence sur "+(!oper_close ? "acheter":"vendre")+" est fermé");} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - ordine di emergenza attivato "+(!oper_close ? "acquistare":"vendere")+" è chiuso");} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - orden de emergencia en "+(!oper_close ? "comprar":"vender")+" esta cerrado");} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - utaratibu wa dharura juu "+(!oper_close ? "kununua":"kuuza")+" imefungwa");} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" DS_Reverse #"+IntegerToString(cn_ds,0)+" - acil durum emri "+(!oper_close ? "sat1n almak":"satmak")+" kapal1");} } else { if(Language==RUS) {Print("MAGIC "+IntegerToString(Magic)+":"+" Не удалось закрыть аварийный ордер на "+(!oper_close ? "покупку":"продажу"));} else if(Language==DEU){Print("MAGIC "+IntegerToString(Magic)+":"+" Die Notfallbestellung für konnte nicht geschlossen werden "+(!oper_close ? "kaufen":"verkaufen"));} else if(Language==ENG){Print("MAGIC "+IntegerToString(Magic)+":"+" Could not close emergency order for "+(!oper_close ? "buy":"sell"));} else if(Language==FRA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossible de fermer la commande d'urgence pour "+(!oper_close ? "acheter":"vendre"));} else if(Language==ITA){Print("MAGIC "+IntegerToString(Magic)+":"+" Impossibile chiudere l'ordine di emergenza per "+(!oper_close ? "acquistare":"vendere"));} else if(Language==ESP){Print("MAGIC "+IntegerToString(Magic)+":"+" No se pudo cerrar la orden de emergencia para "+(!oper_close ? "comprar":"vender"));} else if(Language==SWA){Print("MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufunga utaratibu wa dharura "+(!oper_close ? "kununua":"kuuza"));} else if(Language==TUR){Print("MAGIC "+IntegerToString(Magic)+":"+" İçin acil durum siparişi kapat1lamad1 "+(!oper_close ? "sat1n almak":"satmak"));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Не удалось закрыть аварийный ордер на "+(!oper_close ? "покупку.":"продажу.")+" Код ошибки: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Die Notfallbestellung für konnte nicht geschlossen werden "+(!oper_close ? "kaufen.":"verkaufen.")+" Fehlercode: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Could not close emergency order for "+(!oper_close ? "buy.":"sell.")+" Error code: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossible de fermer la commande d'urgence pour "+(!oper_close ? "acheter.":"vendre.")+" Code d'erreur: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Impossibile chiudere l'ordine di emergenza per "+(!oper_close ? "acquistare.":"vendere.")+" Codice di errore: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" No se pudo cerrar la orden de emergencia para "+(!oper_close ? "comprar.":"vender.")+" Código de error: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Haikuweza kufunga utaratibu wa dharura "+(!oper_close ? "kununua.":"kuuza.")+" Nambari ya hitilafu: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" İçin acil durum siparişi kapat1lamad1 "+(!oper_close ? "sat1n almak.":"satmak.")+" Hata kodu: "+IntegerToString(GetLastError()));} Sleep(10000); GetLastError(); } } //+------------------------------------------------------------------+ //| Count OP_BUY open | //+------------------------------------------------------------------+ int CountBuy() { int count=0; for(int trade=OrdersTotal()-1; trade>=0; trade--) { if(!OrderSelect(trade,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic && OrderType()==OP_BUY) count++; } return(count); } //+------------------------------------------------------------------+ //| Count OP_SELL open | //+------------------------------------------------------------------+ int CountSell() { int count=0; for(int trade=OrdersTotal()-1; trade>=0; trade--) { if(!OrderSelect(trade,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic && OrderType()==OP_SELL) count++; } return(count); } //+------------------------------------------------------------------+ //| Find the type of the last open OP_BUY or OP_SELL | //+------------------------------------------------------------------+ int FindLastOrderType() { for(int i=OrdersTotal()-1; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic) if(OrderType()<=OP_SELL) return(OrderType()); } } return(-1); } //+------------------------------------------------------------------+ //| TrailingStop for StopLossTrading | //+------------------------------------------------------------------+ void Trailing() { for(int i=OrdersTotal() -1; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic) { if(OrderType()==OP_BUY && Bid-OrderOpenPrice()>TrailingStop*1.5*_Point && OrderStopLoss()+TrailingStop*_Point<Bid-TrailingStop*_Point) { double SL_BUY=NormalizeDouble(Bid-TrailingStop*_Point,Digits); bool res=OrderModify(OrderTicket(),OrderOpenPrice(),SL_BUY,0,0,Blue); if(!res) { if(Language==RUS) {Print("Ошибка модификации ордера на покупку: "+IntegerToString(GetLastError()));} else if(Language==DEU){Print("Fehler beim Ändern einer Kauforder: "+IntegerToString(GetLastError()));} else if(Language==ENG){Print("Error modifying a buy order: "+IntegerToString(GetLastError()));} else if(Language==FRA){Print("Erreur lors de la modification d'un ordre d'achat: "+IntegerToString(GetLastError()));} else if(Language==ITA){Print("Errore durante la modifica di un ordine di acquisto: "+IntegerToString(GetLastError()));} else if(Language==ESP){Print("Error al modificar una orden de compra: "+IntegerToString(GetLastError()));} else if(Language==SWA){Print("Hitilafu ya kubadilisha utaratibu wa kununua: "+IntegerToString(GetLastError()));} else if(Language==TUR){Print("Sat1n alma siparişinde değişiklik yap1l1rken hata oluştu: "+IntegerToString(GetLastError()));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Ошибка модификации ордера на покупку: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Fehler beim Ändern einer Kauforder: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Error modifying a buy order: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Erreur lors de la modification d'un ordre d'achat: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Errore durante la modifica di un ordine di acquisto: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Error al modificar una orden de compra: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Hitilafu ya kubadilisha utaratibu wa kununua: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Sat1n alma siparişinde değişiklik yap1l1rken hata oluştu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } } else if(OrderType()==OP_SELL && OrderOpenPrice()-Ask>TrailingStop*1.5*_Point && OrderStopLoss()-TrailingStop*_Point>Ask+TrailingStop*_Point) { double SL_SELL=NormalizeDouble(Ask+TrailingStop*_Point,Digits); bool res=OrderModify(OrderTicket(),OrderOpenPrice(),SL_SELL,0,0,Red); if(!res) { if(Language==RUS) {Print("Ошибка модификации ордера на продажу: "+IntegerToString(GetLastError()));} else if(Language==DEU){Print("Fehler beim Ändern einer Verkaufsorder: "+IntegerToString(GetLastError()));} else if(Language==ENG){Print("Error modifying a sell order: "+IntegerToString(GetLastError()));} else if(Language==FRA){Print("Erreur lors de la modification d'un ordre de vente: "+IntegerToString(GetLastError()));} else if(Language==ITA){Print("Errore durante la modifica di un ordine di vendita: "+IntegerToString(GetLastError()));} else if(Language==ESP){Print("Error al modificar una orden de venta: "+IntegerToString(GetLastError()));} else if(Language==SWA){Print("Hitilafu ya kurekebisha amri ya kuuza: "+IntegerToString(GetLastError()));} else if(Language==TUR){Print("Bir sat1ş siparişini değiştirirken hata oluştu: "+IntegerToString(GetLastError()));} if(Language==RUS) {SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Ошибка модификации ордера на продажу: "+IntegerToString(GetLastError()));} else if(Language==DEU){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Fehler beim Ändern einer Verkaufsorder: "+IntegerToString(GetLastError()));} else if(Language==ENG){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Error modifying a sell order: "+IntegerToString(GetLastError()));} else if(Language==FRA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Erreur lors de la modification d'un ordre de vente: "+IntegerToString(GetLastError()));} else if(Language==ITA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Errore durante la modifica di un ordine di vendita: "+IntegerToString(GetLastError()));} else if(Language==ESP){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Error al modificar una orden de venta: "+IntegerToString(GetLastError()));} else if(Language==SWA){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Hitilafu ya kurekebisha amri ya kuuza: "+IntegerToString(GetLastError()));} else if(Language==TUR){SendMail("BLACKJACK&HOOKERS","MAGIC "+IntegerToString(Magic)+":"+" Bir sat1ş siparişini değiştirirken hata oluştu: "+IntegerToString(GetLastError()));} Sleep(10000); RefreshRates(); } } } } } } //+------------------------------------------------------------------+ //| Displaying message # 1 on the chart | //+------------------------------------------------------------------+ void ShowInfoOne() { if(Language==RUS) {string cm="МАГИК: "+IntegerToString(Magic)+" ПРИБЫЛЬ ЭКСПЕРТА (ph): "+DoubleToString(ph,2)+" ТЕКУЩАЯ ПРИБЫЛЬ (op): "+DoubleToString(op,2); Comment(cm);} else if(Language==DEU){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERT PROFIT (ph): "+DoubleToString(ph,2)+" AKTUELLER GEWINN (op): "+DoubleToString(op,2); Comment(cm);} else if(Language==ENG){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERT PROFIT (ph): "+DoubleToString(ph,2)+" CURRENT PROFIT (op): "+DoubleToString(op,2); Comment(cm);} else if(Language==FRA){string cm="MAGIC: "+IntegerToString(Magic)+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2)+" PROFIT ACTUEL (op): "+DoubleToString(op,2); Comment(cm);} else if(Language==ITA){string cm="MAGIC: "+IntegerToString(Magic)+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2)+" UTILE ATTUALE (op): "+DoubleToString(op,2); Comment(cm);} else if(Language==ESP){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2)+" BENEFICIOS ACTUALES (op): "+DoubleToString(op,2); Comment(cm);} else if(Language==SWA){string cm="MAGIC: "+IntegerToString(Magic)+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2)+" CURRENT PROFIT (op): "+DoubleToString(op,2); Comment(cm);} else if(Language==TUR){string cm="MAGIC: "+IntegerToString(Magic)+" UZMANLIK KAR (ph): "+DoubleToString(ph,2)+" GÜNCEL KAZI (op): "+DoubleToString(op,2); Comment(cm);} } //+------------------------------------------------------------------+ //| Displaying message # 2 on the chart | //+------------------------------------------------------------------+ void ShowInfoTwo() { if(Language==RUS) {string cm="МАГИК: "+IntegerToString(Magic)+" ПРИБЫЛЬ ЭКСПЕРТА (ph): "+DoubleToString(ph,2)+" ТЕКУЩАЯ ПРИБЫЛЬ (op): "+DoubleToString(op,2)+"\n"+"РЕНТАБЕЛЬНОСТЬ СТРАТЕГИИ НА 1 ТРЕЙД: "+DoubleToString(psft,2)+"\n"+"РЕНТАБЕЛЬНОСТЬ ДЛЯ ВОЗВРАТА СТРАТЕГИИ: "+DoubleToString(Activation,2); Comment(cm);} else if(Language==DEU){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERT PROFIT (ph): "+DoubleToString(ph,2)+" AKTUELLER GEWINN (op): "+DoubleToString(op,2)+"\n"+"RENTABILITÄT DER STRATEGIE FÜR 1 HANDEL: "+DoubleToString(psft,2)+"\n"+"PROFITABILITÄT FÜR DIE STRATEGIE-RÜCKKEHR: "+DoubleToString(Activation,2); Comment(cm);} else if(Language==ENG){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERT PROFIT (ph): "+DoubleToString(ph,2)+" CURRENT PROFIT (op): "+DoubleToString(op,2)+"\n"+"PROFITABILITY OF STRATEGY FOR 1 TRADE: "+DoubleToString(psft,2)+"\n"+"PROFITABILITY FOR STRATEGY RETURN: "+DoubleToString(Activation,2); Comment(cm);} else if(Language==FRA){string cm="MAGIC: "+IntegerToString(Magic)+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2)+" PROFIT ACTUEL (op): "+DoubleToString(op,2)+"\n"+"RENTABILITE DE LA STRATEGIE POUR 1 COMMERCE: "+DoubleToString(psft,2)+"\n"+"RENTABILITÉ POUR LE RETOUR DE LA STRATÉGIE: "+DoubleToString(Activation,2); Comment(cm);} else if(Language==ITA){string cm="MAGIC: "+IntegerToString(Magic)+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2)+" UTILE ATTUALE (op): "+DoubleToString(op,2)+"\n"+"REDDITIVITÀ DELLA STRATEGIA PER 1 COMMERCIO: "+DoubleToString(psft,2)+"\n"+"REDDITIVITÀ PER IL RITORNO DI STRATEGIA: "+DoubleToString(Activation,2); Comment(cm);} else if(Language==ESP){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2)+" BENEFICIOS ACTUALES (op): "+DoubleToString(op,2)+"\n"+"RENTABILIDAD DE LA ESTRATEGIA PARA 1 COMERCIO: "+DoubleToString(psft,2)+"\n"+"RENTABILIDAD PARA EL RETORNO DE ESTRATEGIAS: "+DoubleToString(Activation,2); Comment(cm);} else if(Language==SWA){string cm="MAGIC: "+IntegerToString(Magic)+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2)+" HUDUMA KATIKA (op): "+DoubleToString(op,2)+"\n"+"UFUNZO WA MCHANGO WA 1 BIASHARA: "+DoubleToString(psft,2)+"\n"+"UFUNZO WA KATIKA MCHANGO WA KUTOKA: "+DoubleToString(Activation,2); Comment(cm);} else if(Language==TUR){string cm="MAGIC: "+IntegerToString(Magic)+" UZMANLIK KAR (ph): "+DoubleToString(ph,2)+" GÜNCEL KAZI (op): "+DoubleToString(op,2)+"\n"+"1 TİCARET İÇİN STRATEJİ K PROFRLİLİĞİ: "+DoubleToString(psft,2)+"\n"+"STRATEJİ İADE İÇİN KARLILIK: "+DoubleToString(Activation,2); Comment(cm);} } //+------------------------------------------------------------------+ //| Displaying message # 3 on the chart | //+------------------------------------------------------------------+ void ShowInfoThree() { if(Language==RUS) {string cm="МАГИК: "+IntegerToString(Magic)+" ПРИБЫЛЬ ЭКСПЕРТА (ph): "+DoubleToString(ph,2)+" ТЕКУЩАЯ ПРИБЫЛЬ (op): "+DoubleToString(op,2)+"\n"+"ВЫСОКИЙ СПРЕД: ЭКСПЕРТ ПРОДОЛЖИТ РАБОТУ В "+TimeToString(restart,TIME_MINUTES); Comment(cm);} else if(Language==DEU){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERT PROFIT (ph): "+DoubleToString(ph,2)+" AKTUELLER GEWINN (op): "+DoubleToString(op,2)+"\n"+"HOHE VERBREITUNG: DER EXPERTE SETZT SEINE ARBEIT UM "+TimeToString(restart,TIME_MINUTES)+" FORT"; Comment(cm);} else if(Language==ENG){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERT PROFIT (ph): "+DoubleToString(ph,2)+" CURRENT PROFIT (op): "+DoubleToString(op,2)+"\n"+"HIGH SPREAD: EXPERT WILL CONTINUE WORK AT "+TimeToString(restart,TIME_MINUTES); Comment(cm);} else if(Language==FRA){string cm="MAGIC: "+IntegerToString(Magic)+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2)+" PROFIT ACTUEL (op): "+DoubleToString(op,2)+"\n"+"HAUTE DISTRIBUTION: EXPERT CONTINUERA LE TRAVAIL À "+TimeToString(restart,TIME_MINUTES); Comment(cm);} else if(Language==ITA){string cm="MAGIC: "+IntegerToString(Magic)+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2)+" UTILE ATTUALE (op): "+DoubleToString(op,2)+"\n"+"ALTA DIFFUSIONE: L'ESPERTO CONTINUERÀ IL LAVORO ALLE "+TimeToString(restart,TIME_MINUTES); Comment(cm);} else if(Language==ESP){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2)+" BENEFICIOS ACTUALES (op): "+DoubleToString(op,2)+"\n"+"ALTA EXTENSIÓN: EL EXPERTO CONTINUARÁ TRABAJANDO A LAS "+TimeToString(restart,TIME_MINUTES); Comment(cm);} else if(Language==SWA){string cm="MAGIC: "+IntegerToString(Magic)+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2)+" HUDUMA KATIKA (op): "+DoubleToString(op,2)+"\n"+"UFUMU WA MAHIMU: MFUNZO UNAJUMA KUTUMIA AT "+TimeToString(restart,TIME_MINUTES); Comment(cm);} else if(Language==TUR){string cm="MAGIC: "+IntegerToString(Magic)+" UZMANLIK KAR (ph): "+DoubleToString(ph,2)+" GÜNCEL KAZI (op): "+DoubleToString(op,2)+"\n"+"YÜKSEK YAYI: UZMAN, "+TimeToString(restart,TIME_MINUTES)+"'DE ÇALIŞACAK"; Comment(cm);} } //+------------------------------------------------------------------+ //| Displaying message # 4 on the chart | //+------------------------------------------------------------------+ void ShowInfoFour() { if(Language==RUS) {string cm="МАГИК: "+IntegerToString(Magic)+" ПРИБЫЛЬ ЭКСПЕРТА (ph): "+DoubleToString(ph,2)+" ТЕКУЩАЯ ПРИБЫЛЬ (op): "+DoubleToString(op,2)+"\n"+"АДВОКАТ ТРЕБУЕТ ВЕРНУТЬ 50% ИЛИ БОЛЕЕ ПРИБЫЛИ ДЛЯ ИНВЕСТОРА"; Comment(cm);} else if(Language==DEU){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERT PROFIT (ph): "+DoubleToString(ph,2)+" AKTUELLER GEWINN (op): "+DoubleToString(op,2)+"\n"+"DER ANWALT FORDERT FUR DEN ANLEGER EINE RENDITE VON MINDESTENS 50%"; Comment(cm);} else if(Language==ENG){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERT PROFIT (ph): "+DoubleToString(ph,2)+" CURRENT PROFIT (op): "+DoubleToString(op,2)+"\n"+"LAWYER DEMANDS THE RETURN 50% OR MORE PROIT FOR INVESTOR"; Comment(cm);} else if(Language==FRA){string cm="MAGIC: "+IntegerToString(Magic)+" PROFIT D'EXPERTS (ph): "+DoubleToString(ph,2)+" PROFIT ACTUEL (op): "+DoubleToString(op,2)+"\n"+"AVOCAT DEMANDE UN RETOUR DE 50% OU PLUS AU PROFIT POUR L'INVESTISSEUR"; Comment(cm);} else if(Language==ITA){string cm="MAGIC: "+IntegerToString(Magic)+" PROFITTO DELL'ESPERTO (ph): "+DoubleToString(ph,2)+" UTILE ATTUALE (op): "+DoubleToString(op,2)+"\n"+"L'AVVOCATO RICHIEDE UN RENDIMENTO DEL 50% O PIÙ UTILE PER L'INVESTITORE"; Comment(cm);} else if(Language==ESP){string cm="MAGIC: "+IntegerToString(Magic)+" EXPERTO BENEFICIO (ph): "+DoubleToString(ph,2)+" BENEFICIOS ACTUALES (op): "+DoubleToString(op,2)+"\n"+"EL ABOGADO REQUIERE DEVOLVER EL 50% O MÁS BENEFICIO PARA EL INVERSOR"; Comment(cm);} else if(Language==SWA){string cm="MAGIC: "+IntegerToString(Magic)+" MAELEZO YA MFUNZO (ph): "+DoubleToString(ph,2)+" HUDUMA KATIKA (op): "+DoubleToString(op,2)+"\n"+"MFUNZI ANAUFUNA KUTEMBEA 50% AU ZAIDI MAFUNZO YA MCHUWAJI"; Comment(cm);} else if(Language==TUR){string cm="MAGIC: "+IntegerToString(Magic)+" UZMANLIK KAR (ph): "+DoubleToString(ph,2)+" GÜNCEL KAZI (op): "+DoubleToString(op,2)+"\n"+"LAWYER, YATIRIMCI İÇİN% 50 VEYA DAHA FAZLA KAZANIR"; Comment(cm);} } //+------------------------------------------------------------------+ //| Additional Information (RUS) | //+------------------------------------------------------------------+ // Данный советник скомпонован на основе видеоуроков по программированию MQL4 с сайта // Торрент для загрузки видеоуроков: http://rutracker.org/forum/viewtopic.php?t=4718091 // Если у вас возникли замечания по работе советника или вопросы, пишите пожалуйста: // https://www.mql5.com/de/users/geratdc_ // Обновлённые / доработанные файлы советника, тесты и руководство пользователя находятся по адресу: // https://drive.google.com/file/d/1wF4JdFXS-f6jYbFYmdbMa_iqWVgOJlmG/view //+------------------------------------------------------------------+
1 Minute Scalper
1 Minute Scalper EA with 13 moving Averages has Trailing Stop Loss &Take Profit works best on 1 minute time frame major forex pairs and stocks NASDAQ.
Adx EA
Adx EA trades with ADX indicator strategies has Trailing Stop Loss &Take Profit works on all time frames major forex pairs and stocks NASDAQ.
Macd 1 Min Scalper
Macd 1 Min Scalper uses two moving averages and "MACD" indicator on 1 min time frame has Trailing Stop Loss &Take Profit works best on major forex pairs and stocks NASDAQ.
10Pips
10Pips EA uses two moving averages to find 10 pips,has Trailing Stop Loss &Take Profit works best on 1 hour time frame major forex pairs and stocks NASDAQ.