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

 

накопление статической переменной на открытии

Я хочу накапливать статическую переменную, но только один раз за бар. Если кто-то может предложить способ сделать это, я буду благодарен. Моя проблема в том, что она добавляется заново на каждом тике, в то время как я хочу выполнять вычисления только один раз за бар на самом первом тике.

 

static datetime myTime = 0;

if(myTime != Time[0])

{

//делаем то, что должно быть сделано один раз после открытия нового бара

myTime = Time[0];

}

 
timbobo:
static datetime myTime = 0;

if(myTime != Time[0])

{

//делаем то, что должно быть сделано один раз после открытия нового бара

myTime = Time[0];

}

Спасибо timbobo!

 

Пожалуйста, помогите мне. Я использую код, размещенный выше, и он не работает на 100%. Если я получаю 1 сигнал, он не торгует, но если он получает второй сигнал, он торгует. Это очень странно, почему при втором сигнале торговля идет, а при первом нет?

 

Необходимо увидеть своего эксперта для корректировки.

 

мне нужна помощь в коде - трейлинг профит

кто-нибудь может помочь мне сделать код или советник для трейлинг профита?

я думаю, что это очень хорошая идея

 
yossi1177:
кто-нибудь может помочь мне сделать код или советник для трейлинг профита? Я думаю, что это очень хорошая идея.

в точности противоположное трейлинг-стопу

 
yossi1177:
Кто-нибудь может помочь мне сделать код или советник для трейлинг-профита? Я думаю, что это очень хорошая идея.

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

 
yossi1177:
кто-нибудь может помочь мне сделать код или советник для трейлинга прибыли? я думаю, что это очень хорошая идея

Это простой код трейлинга прибыли на 3 свечи (PT) или, скорее, трейлинг-стоп. Он активируется GapPT=количество пунктов в прибыли. Во вложении пример графика метода 3 свечи.

Wackena

extern int GapPT=10;

int c, n, p;

double LongPT, ShortPT;

c=0; p=0;

for(n=0;n<=6;n++)

{

if(High[c+1]Low[c+2]) {n--;}

c++;

p++;

if(n==3) break;

}

ShortPT=NormalizeDouble(High,Digits);

LongPT=NormalizeDouble(Low,Digits);

int total = OrdersTotal();

for(int cnt=0;cnt<total;cnt++) {

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY && OrderClosePrice()-OrderOpenPrice() >= GapPT*Point)

{

OrderModify(OrderTicket(),OrderOpenPrice(),LongPT,OrderTakeProfit(),0,GreenYellow);

}

if(OrderType()==OP_SELL && OrderOpenPrice()-OrderClosePrice() >= GapPT*Point)

{

OrderModify(OrderTicket(),OrderOpenPrice(),ShortPT,OrderTakeProfit(),0,Red);

}

}
Файлы:
Причина обращения: