| / | Форум |
|
HIDDEN
04.01.2007 07:33
Приветствую.
Действительно многие экспертные системы используют в своих торговых методиках время, в разных комбинациях и в разных условиях. Но в некоторых случаях не совсем понятно как этим воспользоваться. В моём случает хочу написать условие, ограничивающие торговлю эксперта по сессиям, а именно если эксперт торговал в начале, середине скажем европейской сессии и успел закрыть прибыльный или убыточный ордер по паре, то вход в рынок осуществляется по условию входа только на новой сессии. Для понимания экспертом когда закрылся последний ордер по той или иной паре использую следующию функцию. //+----------------------------------------------------------------------------+ //| Возвращает время закрытия ордера. | //| Параметры: | //| mn - MagicNumber (-1 - любой магик) | //+----------------------------------------------------------------------------+ int GetTimeClose(int mn=-1) { datetime l = 0; int i, k=OrdersHistoryTotal(); for (i=0; i<=k; i++) { if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) { if (OrderType()==OP_BUY || OrderType()==OP_SELL) { if (OrderMagicNumber()==mn && OrderSymbol()==Symbol()) { l=OrderCloseTime(); } } } } return(l); } Естественно время возвращается в секундах, как привязать время последнего закрытоого ордера к торговой сессии? Помогите разобраться в данном вопросе, желательно на примере: if (GetTimeClose(MAGICMA)<14) return(0); 14 - час по времени MT4. |
|
В этом статистическом отчете мы проанализировали 10 лучших экспертов на основе критериев рискованности и устойчивости. |
|
Integer
04.01.2007 08:01
Получить время закрытия ордера в часах TimeHour(OrderCloseTime())
|
|
HIDDEN
04.01.2007 08:15
Спасибо, как же я пропустил то этот момент. Всё заканчиваю праздновать. |
|
Reshetov
04.01.2007 12:11
HIDDEN писал (а): Cамый простой способ входа по новой сессии - это проверка на дневках
сформировавшегося бара. Новый дневной бар формируется в начале
любой сессии, а завершается в конце. И проверку следует делать
не по времени, а по дате. Если дата поменялась, значит и сессия
уже другая.Приветствую. Действительно многие экспертные системы используют в своих торговых методиках время, в разных комбинациях и в разных условиях. Но в некоторых случаях не совсем понятно как этим воспользоваться. В моём случает хочу написать условие, ограничивающие торговлю эксперта по сессиям, а именно если эксперт торговал в начале, середине скажем европейской сессии и успел закрыть прибыльный или убыточный ордер по паре, то вход в рынок осуществляется по условию входа только на новой сессии. |
|
SK.
04.01.2007 13:09
В течение суток проходит три сессии. Поэтому нельзя ориентироваться
ни на дату ни на начало дневного бара. |
|
HIDDEN
04.01.2007 15:55
SK. писал (а): В течение суток проходит три сессии. Поэтому нельзя ориентироваться
ни на дату ни на начало дневного бара. Для отслеживания событий из календаря у меня другой модуль есть. Мне нужно просто ограничить эксперта, что-бы если он закрыл 1 ордер в сессию до следующей сессии не торговал. Только пока что-то не получается. |
|
SK.
04.01.2007 20:02
HIDDEN писал (а): Для отслеживания событий из календаря у меня другой модуль есть. Мне нужно просто ограничить эксперта, что-бы если он закрыл 1 ордер в сессию до следующей сессии не торговал. Только пока что-то не получается. Для этого нужно формализовать задачу. Если критерии точно известны, то решение зачастую кроется в самой постановке задачи: 1. Численно задать время начала сессий. 2. Учесть имеющиеся ордера. 3. Ввести в состав советника блок, в кот. анализировалось бы сочетание ордеров, факт закрытия ордеров в течение текущей сессии и текущего момента (т.е. в какой сессии находимся) . Этот блок может, например, менять флаг, разрешающий торговлю: если флажок поднят и было закрытие, то опустить его (торговля запрещена в соотв. с алгоритмом). По окончании сессии флажок нужно поднять (торговля разрешена в соотв. с алгоримом). 4. В торговом блоке разрешать новые ордера в зависимости от состояния этого флага (и, если это предусматривается, то и от наличия сигнала на откр. ордера). |
|
HIDDEN
04.01.2007 23:00
Вроде все устаканилось. Работает всем спасибо |
|
Reshetov
05.01.2007 14:10
SK. писал (а): Это я запарился. Отвык от Forex, т.к. торгую на акциях по CFDВ течение суток проходит три сессии. Поэтому нельзя ориентироваться
ни на дату ни на начало дневного бара. |
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий