Я сделал советник со следующим...
внешний интервал IntIndTF1 = 4;
внешний интервал IntInd1S1 = 2;
внешний интервал IntInd1S2 = 14;
внешний интервал IntIndTF2 = 1;
внешний интервал IntInd2S1 = 3;
внешний интервал IntInd2S2 = 9;
Вставленный код PerH1 = High#91;iHighest(SymbolToManage,IntIndTF1,MODE_HIG H,IntInd1S2,IntInd1S1)#93;; PerL1 = Low#91;iLowest(SymbolToManage,IntIndTF1,MODE_LOW,I ntInd1S2,IntInd1S1)#93;; PerM1 = NormalizeDouble((PerH1 PerL1)/2,Digits); PerH2 = High#91;iHighest(SymbolToManage,IntIndTF2,MODE_HIG H,IntInd2S2,IntInd2S1)#93;; PerL2 = Low#91;iLowest(SymbolToManage,IntIndTF2,MODE_LOW,I ntInd2S2,IntInd2S1)#93;; PerM2 = NormalizeDouble((PerH2 PerL2)/2,Digits);
Он отлично работал, пока я не начал тестировать с ним другие символы, а затем появилась ужасная ошибка «Массив вне диапазона», поэтому я изменил его на это...
Вставленный код int BarCount = Bars; если (BarCount lt; 1) BarCount = 1; for (int i=0; igt;Bars; i--) { PerH1 = High#91;iHighest(SymbolToManage,IntIndTF1,MODE_HIG H,IntInd1S2,i IntInd1S1)#93;; PerL1 = Low#91;iLowest(SymbolToManage,IntIndTF1,MODE_LOW,I ntInd1S2,i IntInd1S1)#93;; PerM1 = NormalizeDouble((PerH1 PerL1)/2,Digits); PerH2 = High#91;iHighest(SymbolToManage,IntIndTF2,MODE_HIG H,IntInd2S2,i IntInd2S1)#93;; PerL2 = Low#91;iLowest(SymbolToManage,IntIndTF2,MODE_LOW,I ntInd2S2,i IntInd2S1)#93;; PerM2 = NormalizeDouble((PerH2 PerL2)/2,Digits); } Ошибок массива вне диапазона стало меньше. ОДНАКО, теперь я не могу заставить его имитировать предыдущие настройки, которые работали хорошо...
внешний интервал IntIndTF1 = 4;
внешний интервал IntInd1S1 = 2;
внешний интервал IntInd1S2 = 14;
внешний интервал IntIndTF2 = 1;
внешний интервал IntInd2S1 = 3;
внешний интервал IntInd2S2 = 9;
Я тестировал диапазоны 1 и -1, но теперь советник не возвращается к одним и тем же расчетным значениям для одних и тех же баров. Как я могу изменить код, чтобы устранить ошибки, но сохранить ранее проверенные значения и результаты.
Это в советнике без индикатора. Значения для HHLL находятся в самом советнике. Я хочу, чтобы он мог читать и получать те же результаты для переменной extern на панели, которая запускает сигнал.