проблема в тестировании mql5 с иранскими символами - PullRequest
0 голосов
/ 19 марта 2020

Я новичок в mql5.

Я написал простого эксперта, который корректно работает (покупает и продает) при тестировании EUR / USD

, но в тестере стратегий mt5, когда я меняюсь символ иранских акций показывает, что он не работает, и я вижу в визуальном режиме, что цена, RSI и CCI go для покупки или продажи, но это не работает!

I ' Мы изменили депозит с USD на RLS и много пробовали, но он не работает.

Я протестировал его в оригинальной версии mt5 и получил тот же результат. Я позвонил своему брокеру и спросил, запретили ли они что-то на своем сервере, и они сказали, что нет никаких ограничений.

Вы можете увидеть мои scrshots конфигурации тестера стратегий, которые работают на eur / usd, а те, которые не работают на иранских символах.

Как я могу решить эту проблему и протестировать мои коды на иранском символе акций .

это мой простой код:

#include <Trade/Trade.mqh>
CTrade trade;
void OnTick()
  {
   double ask=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_ASK),_Digits);
   double bid=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_BID),_Digits);

   double rsi[];
   int rsiData=iRSI(_Symbol,_Period,14,PRICE_CLOSE);
   CopyBuffer(rsiData,0,0,3,rsi);
   double currentRSI=NormalizeDouble(rsi[0],2);

   double cci[];
   int cciData=iCCI(_Symbol,_Period,14,PRICE_CLOSE);
   CopyBuffer(cciData,0,0,3,cci);
   double currentCCI=NormalizeDouble(cci[0],2);

   if(currentRSI>70 && currentCCI>100 && PositionsTotal()==0)
      trade.Sell(0.1,NULL,bid,bid+100*_Point,bid-200*_Point,NULL);
   if(currentRSI<30 && currentCCI<-100 && PositionsTotal()==0)
      trade.Buy(0.1,NULL,ask,ask-100*_Point,ask+200*_Point,NULL);

  }

works doesn't work1 doesn't work2

...