Чтобы сделать так,надо в историю смотреть. И ориентироваться по тому ордеру который интересует.У вас будет Magic и OrderProfit() по ним и принимается решение.
Но,мне кажется Вы не совсем правы с постановкой правил открытия. Если движение по вашему индикатору будет более 100п,Вы возьмёте 100, а дальше ?.
Желаю успехов.
Чтобы сделать так,надо в историю смотреть. И ориентироваться по тому ордеру который интересует.У вас будет Magic и OrderProfit() по ним и принимается решение.
Но,мне кажется Вы не совсем правы с постановкой правил открытия. Если движение по вашему индикатору будет более 100п,Вы возьмёте 100, а дальше ?.
Желаю успехов.
А дальше стоит еще один ордер.
Смысл следующий:
Если ориентироваться по уровню пивота, то очень хорошая прибыль получается при длинных позициях в несколько дней. А основной проигрыш во внутридневном флете относительно уровня, т.е. когда цена пересекает пивот несколько раз в течении дня. Таким образом я решил что если каждый раз открывать 2 сделки: первая с ТП на 200 и СЛ на 100, а вторая только со СЛ 100, то потери от 2 неверных сделок будут перекрываться ТП от одной верной, а длинная сделка останется на следующий день. При наступлении следующего дня СЛ по длинной сделке двигается на уровень пивота.
Если есть в этом что-то интересное то пиши на мыло lexxsakhalin@gmail.com
Как сделать так чтобы, если ордер закрылся тейкпрофитом, то он не открывался заново...
https://www.mql5.com/ru/forum/107476/page21#79649 | isCloseLastPosByStop | b-Positions.mqh | 20.05.2008 | Флаг закрытия последней позиции по стопу |
https://www.mql5.com/ru/forum/107476/page21#79908 | isCloseLastPosByTake | b-Positions.mqh | 21.05.2008 | Флаг закрытия последней позиции по тейку |
https://www.mql5.com/ru/forum/107476/page21#79649 | isCloseLastPosByStop | b-Positions.mqh | 20.05.2008 | Флаг закрытия последней позиции по стопу |
https://www.mql5.com/ru/forum/107476/page21#79908 | isCloseLastPosByTake | b-Positions.mqh | 21.05.2008 | Флаг закрытия последней позиции по тейку |
Спасибо.
А как можно его в советник засунуть:)
Ххха :)
Как вариант
... if(isCloseLastPosByTake(Symbol(), -1, -1) == false) { if (Ask > Iduk_Pivot_Points && Otkritii_BUY == 0 && Ask > ST_induk){ OrderSend (Symbol(),OP_BUY,Lot,Ask,0,Bid-SL*Point,0,"Lexx",111,0,Green);//Открытие сделки на покупку } if (Bid < Iduk_Pivot_Points && Otkritii_SELL == 0 && Bid < ST_induk) { OrderSend (Symbol(),OP_SELL,Lot,Bid,0,Ask+SL*Point,0,"Lexx",222,0,Red);//Открытие сделки на продажу } if (Ask > Iduk_Pivot_Points && Otkritii_BUY_TP == 0 && Ask > ST_induk){ OrderSend (Symbol(),OP_BUY,Lot,Ask,0,Bid-SL*Point,Ask+TP*Point,"Lexx",333,0,Green);//Открытие сделки на покупку с TP Otkritii_BUY_TP = 1; Otkritii_SELL_TP = 0; } if (Bid < Iduk_Pivot_Points && Otkritii_SELL_TP == 0 && Bid < ST_induk){ OrderSend (Symbol(),OP_SELL,Lot,Bid,0,Ask+SL*Point,Bid-TP*Point,"Lexx",444,0,Red);//Открытие сделки на продажу с TP Otkritii_BUY_TP = 0; Otkritii_SELL_TP = 1; } } ...
"Обрамите" Ваш блок открытия проверкой на причину закрытия последнего ордера.
Если вопрос
А как можно его в советник засунуть
про собственно подключение функции, то простейший вариант - вставьте код "из ссылок" в конец Вашего советника, соблюдая "целостность всех скобок".
k=OrdersHistoryTotal();// выбор ордера закрытого ТП
for(i=0; i<k; i++){
if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)){
if (NormalizeDouble(OrderClosePrice(), 5)==NormalizeDouble(OrderTakeProfit(), 5)){
if (OrderType()==OP_BUY) PosTPClose=1;
if (OrderType()==OP_SELL) PosTPClose=2;
i=k;
Print(OrdersHistoryTotal(), " ", PosTPClose, " ",OrderClosePrice(), " ",OrderTakeProfit(), " ",OrderTicket());
}
}
}
Блин в чем ошибся?
Ххха :)
Как вариант
"Обрамите" Ваш блок открытия проверкой на причину закрытия последнего ордера.
Если вопрос
про собственно подключение функции, то простейший вариант - вставьте код "из ссылок" в конец Вашего советника, соблюдая "целостность всех скобок".
От туда копирую и пишет ошибки!!!
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Как сделать так чтобы, если ордер закрылся тейкпрофитом, то он не открывался заново...
Например, ордер открывается с ТП 100 при пересечении определенной линии и при достижении 100 пунктов снимается профит и после этого ордер по изначальному условию должен по идее открыться, но этого не надо...
Прикладываю советник строки //Открытие сделки на покупку с TP и //Открытие сделки на продажу с TP