Не плохо было бы ввести структуру состояния заполняемую событием Trade - страница 4

 

Мы расширим функционал функции OnTrade, добавив детальную структуру с описанием события.

Это будет в ближайших 2-3 билдах.

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 
Renat:

Мы расширим функционал функции OnTrade, добавив детальную структуру с описанием события.

Это будет в ближайших 2-3 билдах.


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

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

 А на счет структуры - все верно. Она просто необходима, когда одновременно могут висеть десятки ордеров.

 
C-4:

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

 А на счет структуры - все верно. Она просто необходима, когда одновременно могут висеть десятки ордеров.

Скорей всего имелось введу не мультивалютники, а мультисистемники (когда несколько алгоритмов торгуют на одном символе)...
 
Interesting:
Скорей всего имелось введу не мультивалютники, а мультисистемники (когда несколько алгоритмов торгуют на одном символе)...
Да, да. Это и имелось в виду. Но мультивалютники тоже никто не отменял. У меня сразу все будет в одном флаконе. Такой алгоритм я уже разработал.
 

Вот вы о улучшениях толкуете...

А мне бы с ошибками и кодами возврата разобраться. В тесторе. Он же уже давно успешно используется для гоняния не криворуких стратижек.

Например, получаем ответ - неверный стоп. В обрамлении рыночного окружения...  

 

2010.08.10 00:45:10 Core 1 2009.07.17 10:19:41 1.41102 sl:1.41590 tp:1.40500 5 Bid=1.41045 OTS=0.00055
2010.08.10 00:45:10 Core 1 2009.07.17 10:19:41 **S после 1.40874 < 1.40874 + 1.40924 > 1.40879 Bid=1.41045 Price=1.41102 SPred=0.00000 R=10016 Vol=0.10000
2010.08.10 00:45:10 Core 1 2009.07.17 10:19:41 failed sell limit 0.10 EURUSD at 1.41102 sl: 1.41590 tp: 1.40500 [Invalid stops]
2010.08.10 00:45:10 Core 1 2009.07.17 10:19:41 1.41102 sl:1.41590 tp:1.40500 5 Bid=1.41045 OTS=0.00055
2010.08.10 00:45:10 Core 1 2009.07.17 10:19:41 **S до 1.40874 < 1.40874 + 1.40924 > 1.40879 Bid=1.41045 Price=1.41102 SPred=0.00000 R=10016 Vol=0.10000

для понимания контекста, фрагмент кода -

 

    

    OTS=_Point*(SymbolInfoInteger(Symbol(),SYMBOL_TRADE_STOPS_LEVEL)+5); 
     mReq.type=ORDER_TYPE_SELL_LIMIT;
     mReq.price=tick.bid+OTS+2.0*_Point;
/**/

      Print ("**S до ",DS(S00)," < ",DS(S10)," + ",DS(S01)," > ",
           DS(S11)," Bid=",DS(tick.bid)," Price=",DS(tick.bid+OTS+2.0*_Point),
           " SPred=",DS(Myspred)," R=",mRez.retcode," Vol=",DS(mReq.volume));
     Print (DS(mReq.price)," sl:",DS(mReq.sl)," tp:",DS(mReq.tp),
            " ",mReq.action," Bid=",DS(tick.bid)," OTS=",DS(OTS));/**/ 
     
     mReq.action=TRADE_ACTION_PENDING;
   
     mReq.volume=NormalizeDouble(mReq.volume,oDEC);
   

    if ( !OrderSendM(mReq,mRez,tick))
       {
    /**/

        Print ("**S после ",DS(S00)," < ",DS(S10)," + ",DS(S01)," > ",
               DS(S11)," Bid=",DS(tick.bid)," Price=",DS(tick.bid+OTS+2.0*_Point),
               " SPred=",DS(Myspred)," R=",mRez.retcode," Vol=",DS(mReq.volume));
        Print (DS(mReq.price)," sl:",DS(mReq.sl)," tp:",DS(mReq.tp),
               " ",mReq.action," Bid=",DS(tick.bid)," OTS=",DS(OTS));/**/

       }

 Корифеи МQL5! 

Поясните, почему инвалид? И как корректно действовать дальше?

Если разработчики читают, может тоже - что посоветуют? 

Ведь не в тесторе - работает пока. Спрэд же не нулевой...

;) 

 
C-4:

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

 А на счет структуры - все верно. Она просто необходима, когда одновременно могут висеть десятки ордеров.

Да верно, ордер это лишь средство передачи серверу параметров позиции (новой или уже существующей).
 
avatara:

инвалидные стопы) это не только стоплось, тейкпрофит, но и цена открытия отложеника.(ф смысле - что-то не влазит в стоплевел)

Спред в коде не учитывается, в момент открытия видно был больше 7 "новых" пунктов.

   OTS=_Point*(SymbolInfoInteger(Symbol(),SYMBOL_TRADE_STOPS_LEVEL));//таки пусть отступ будет именно отступом :)
   mReq.price=tick.ask+OTS;//минимальное расстояние +ещё чего нибудь, если надо. В реале желательно/необязательно ещё +deviation
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
Swan:

инвалидные стопы) это не только стоплось, тейкпрофит, но и цена открытия отложеника.(ф смысле - что-то не влазит в стоплевел)

Спред в коде не учитывается, в момент открытия видно был больше 7 "новых" пунктов.


И что не так? Стоплевел 50 "новых"...

Сель по биду, аск при баях...

С запасом всё открывается. А всё равно инвалид. Это криворукость или косоглазость так диагностировали?

;)

---------

Странно, если к стопам персистентно и релевантно, судя из ваших слов, приписали цену открытия. Тоже "догадайся мол сама".

Мне ситуация не очевидна. :(

 
А ведь к слову!
Желающие могут запустить незатейливый советник, пишущий историю котировок. Спрэд у меня = 0. Может от того и "кружит почту"? Ведь неплохое стат. преимущество...

;)

Файлы:
testfiles.mq5  4 kb