Как кодировать? - страница 208

 

Для fxbg

Поправьте свою логику. Когда вы закрываете ордер программно, вы меняете CurrentDirection на 0, но, если он закрывается по стоплоссу - нет.

 
 

Сравнение значений

Привет всем,

Очень простой вопрос, так как я не уверен, что правильно понял значения индикаторов!

У меня есть такие значения:

laADX00 = iADX(NULL,0,14,PRICE_CLOSE,MODE_MAIN,0);

laADXP0 = iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,0);

laADXM0 = iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,0);

laADX01 = iADX(NULL,0,14,PRICE_CLOSE,MODE_MAIN,1);

laADXP1 = iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,1);

laADXM1 = iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,1);

laADX02 = iADX(NULL,0,14,PRICE_CLOSE,MODE_MAIN,2);

laADXP2 = iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,2);

laADXM2 = iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,2);

и если в дальнейшем у меня будет что-то вроде:

Addon= "";

if (laADX02 > laADX01 && laADX01 > laADX00) Addon= "Up laADX0";

if (laADX02 < laADX01 && laADX01 < laADX00) Addon= "Down laADX0";

if (laADX02 > laADX01 && laADX01 < laADX00) Addon= "Top laADX0";

если (laADX02 laADX00) Addon= "Bottom laADX0";

Печать Addon.....

Addon= "";

if (laADXP2 > laADXP1 && laADXP1 > laADXP0) Addon= "Up laADXP";

if (laADXP2 < laADXP1 && laADXP1 < laADXP0) Addon= "Down laADXP";

if (laADXP2 > laADXP1 && laADXP1 < laADXP0) Addon= "Top laADXP";

если (laADXP2 laADXP0) Addon= "Bottom laADXP";

Печать Addon.....

Addon= "";

if (laADXM2 > laADXM1 && laADXM1 > laADXM0) Addon= "Up laADXM";

if (laADXM2 < laADXM1 && laADXM1 < laADXM0) Addon= "Down laADXM";

if (laADXM2 > laADXM1 && laADXM1 < laADXM0) Addon= "Top laADXM";

if (laADXM2 laADXM0) Addon= "Bottom laADXM";

И я вывел, что например UP laADXM ...а на графике ADX DI- id идет вниз или что-то еще, но не растет. Аналогично для RSI, CCI, MACD, ...

Что здесь не так? Я понял, что определенное выше laADX00 - это значение ADX в данный момент, laADX01 - значение ADX для предыдущего бара в момент закрытия цены на этом баре, laADX02 - значение ADX для 2 баров назад в момент закрытия цены на этом баре. Правильно ли это или laADX01 - это значение ADX для предыдущего тика, а laADX02 - для 2 тиков назад?

Может кто-нибудь прояснить мне это, пожалуйста, так как графики и эти определения не 1:1?

PS: Я протестировал советника в Strategy Simulator, когда увидел эти противоречивые результаты.

Заранее спасибо

Александр

 

Извините... пример был неправильный... это из моего скрипта... но в любом случае симулятор представляет его иначе, чем напечатанное предложение

Addon= "";

if (laADX02 < laADX01 && laADX01 < laADX00) Addon= "Up laADX0";

if (laADX02 > laADX01 && laADX01 > laADX00) Addon= "Down laADX0";

if (laADX02 laADX00) Addon= "Top laADX0";

if (laADX02 > laADX01 && laADX01 < laADX00) Addon= "Bottom laADX0";

Печать Addon.....

 

нужна помощь в написании сценария

Здравствуйте!

Нужна помощь в понимании того, как использовать orderelect().

Хотелось бы узнать, возможно ли установить переменную с тем же значением orderprofit() .

Спасибо

 

И еще одно, есть ли способ закрыть все открытые ордера?

Спасибо

 

Сглаживание внутри индикатора

Я пытаюсь модифицировать один из размещенных здесь индикаторов Bollinger percent b. Я хочу (в первую очередь) просто добавить возможность сглаживать данные с помощью скользящей средней и помещать результат в Buffer3. Не мог бы кто-нибудь показать мне, где я ошибаюсь.

if(counted_bars>=BBPeriod) i=Bars-counted_bars-1;

while(i>=0)

{ //(Last - Lower BB)/(Upper BB - Lower BB)

BLGBuffer=((Close - iBands(NULL,0,BBPeriod,StdDeviation,0,AppliedPrice,MODE_LOWER,i))/

(iBands(NULL,0,BBPeriod,StdDeviation,0,AppliedPrice,MODE_UPPER,i)-iBands(NULL,0,BBPeriod,StdDeviation,0,AppliedPrice,MODE_LOWER,i)))*100;

//m_level refers to the bollinger bands centre line. i.e. 21MA

mlevel=iMA(NULL,0,BBPeriod,0,BollingerMAMethod,AppliedPrice,0);

Buffer3 = iMAOnArray(BLGBuffer, 0, SmoothingMAPeriod, 0, SmoothingMAMethod, i);

i--;

}
 

просто попробуйте

попробуйте знак #

код

# это не код #

how to insert the image over here ?