
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Всем доброго времени суток. Я тестирую советника. При помощи него я не собираюсь торговать.Но только проверить некоторую закономерность. Советник открывает ордер на каждой минутной свече.Если ордер закрылся по СЛ, по цене закрытия ордера по СЛ открыть другой ордер BUY
int start()
{
if(Bid == iOpen(NULL,PERIOD_M1,0))
if ( G != Minute() )
{
OrderSend(Symbol(),OP_SELL,0.1,Bid ,3,Ask+400*Point,Ask-200*Point,Y10,123 );
G = Minute();
}
////******* Если в списке закрытых ордеров есть ордер закрытый по СЛ - открыть другой ордер
int Счетф=0, Номерф=OrdersHistoryTotal()-1;
for( ; Номерф>=0; Номерф--)
{
if(!OrderSelect(Номерф, SELECT_BY_POS, MODE_HISTORY)) continue;
if(OrderProfit()>=0) break;
Счетф++;
if(Счетф>0)
if(TimeCurrent()==OrderCloseTime())
OrderSend(Symbol(),OP_BUY,1,Ask,1,Bid-400*Point,Bid+200*Point,Y11,123 );
}
return;
}
Проблема.. Если на одном тике закрылось несколько ордеров и последний из них закрылся по ТР, то нужный мне ордер BUY не открывается. Потому что программа считает, что последним закрылся ордер по ТР, а не по СЛ. Вот пример такой ситуации
13:38:15.859 2008.01.02 15:01:46 Tester: stop loss #232 at 1.46566 (1.46560 / 1.46562)
13:38:15.859 2008.01.02 15:01:46 Tester: stop loss #233 at 1.46566 (1.46560 / 1.46562)
Спасибо.13:38:15.859 2008.01.02 15:01:46 Tester: take profit #302 at 1.46562 (1.46560 / 1.46562)
13:38:15.859 2008.01.02 15:02:00 MACD Sample EURUSD,M1: open #347 sell 0.10 EURUSD at 1.46570 sl: 1.46972 tp: 1.46372 ok
Подскажите пожалуйста какую языковую конструкцию нужно применить, что бы на одном тике ордер BUY открывался сразу после закрытия ордера по СЛ на том же тике, на котором закрылся ордер по СЛ.