Индикатор Стохастик. Любопытное наблюдение. - страница 6

 
leonid553:

Без трейлинга ещё можно было бы программно отследить запрещенную LONG-сделку по её стоплоссу и тейкпрофиту.

Но вот с тралом.... Даже не представляю как подойти к решению.. ..

Видимо, нужно предусмотреть блок, реализующий имитацию запрещенной сделки. Посмотрел примеры, но ничего похожего не нашел.


О чем речь, о конкретном эксперте или вообще ?

По-моему можно просто закомментировать блок открытия длинных позиций и все.

 

Нет. Так не получится. Если закомментировать блок открытия длиинных позиций, то получится вот что:

Например, у нас открылась короткая позиция. Закрылась. Потом у нас сигнал на длинную, но она не открывается т.к. запрещена (или закомментирована). Но через некот. время приходит сигнал на короткую и опять открывается короткая.

Но нам этого не надо. Т.к. в это время должна ещё (например) быть в рынке та длинная которую мы запретили (закомментировали).

Таким образом у нас при закомментировании будут все время открываться короткие позиции - те которые нам нужны. И ПЛЮС ТЕ КОТОРЫЕ НАМ НЕ НУЖНЫ ! Т.к. вместо длинных закомментированных позиций будут часто открываться совсем не нужные нам дополнительные короткие позиции!

а нам нужно, чтобы в то врямя, когда шла-бы запрещённая(закоментированная) длинная позиция, - чтобы в это время короткие не открывались!

Вот почему и нужна имитация длинных....

 
leonid553:
Вот почему и нужна имитация длинных....
Мне кажется, что самым простым было бы паллиативное решение уменьшать лоты длинных позиций до разрешенного брокером минимума (вплоть до 0,01), а короткие открывать обычным лотом. Будет штатно работать трейлинг и все остальное,  а влияние непрофитных (длинных) позиций на финансовый результат фактически устранится.
 

Благодарю, granit77 ! Действительно. Можно сделать и так.

Ну вот, одно решение уже есть....!

 

Принципиально решение можно было бы сделать так:

Ввести целый флаг, скажем F. При отсутствии позиций F=0, при открытой длинной F=1, при короткой F=-1. Значение F изменяется по приходу соответствующего сигнала, но только на 1. То есть изменение с F=1 на F=-1 невозможно. В коде это должно стоять после операторов открывающих позицию (можно даже вставить условие, что F изменяется только при успешной операции).

Основной момент: если пришел сигнал BUY, то при F=1 ничего не происходит (уже открыта), при F=0 открывается длинная, при F=-1 закрывается короткая. Соответственно при SELL - наоборот. При такой структуре кода достаточно просто закомментировать BUY или SELL. Или оба сразу (например, для сбора статистики по сигналам, но без торговли). Одна только тонкость - изменение F по приходу сигнала должно быть безусловным. Поэтому если есть проверка на успешность операции по открытию-закрытию позиции, то ее тоже нужно закомментировать.

 
Благодарю, Yurix ! Вроде ухватил  мысль. Попробую подумать здесь...
 
Yurixx:

Принципиально решение можно было бы сделать так:

А как же срабатывание СЛ/ТП позиций? Если срабатывает СЛ бай, F должно стать = 0, а оно останется == 1.

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

Наверное, придется так и сделать. А вы, komposter, не забыли, что у меня позиции открываются с трейлингстопом? Да и ещё с вызовом библиотеки трейлинга!

Получится такая имитация?

 
leonid553:

Наверное, придется так и сделать. А вы, komposter, не забыли, что у меня позиции открываются с трейлингстопом? Да и ещё с вызовом библиотеки трейлинга!

Получится такая имитация?

Моя виртуальная торговля полностью подменяет все торговые функции.
Поэтому любые изменения в ордерах обрабатываются как в реале (только ошибок от сервера не бывает).

- трейлинг будет двигать виртуальный СЛ
- библиотека будет проверять, не слишком ли близко СЛ к текущей цене
- при подходе цены к виртуальному СЛ он (СЛ) сработает (виртуально)

Полная имитация реальной работы ;)
 
komposter:
Yurixx:

Принципиально решение можно было бы сделать так:

А как же срабатывание СЛ/ТП позиций? Если срабатывает СЛ бай, F должно стать = 0, а оно останется == 1.

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


Я предложил Леониду элементарное решение вопроса. Рассчитанное на незначительную переделку кода, которую может сделать и не слишком умудренный в MQL. В том числе и Леонид. Бесплатно. При этом я даже не видел кода советника. И все равно могу сказать, что и ваш вопрос решается.

Вы можете сделать круче ? За недорого ? :-) Я в этом не сомневаюсь. Я тоже. Забесплатно. Будем конкурировать ?

Причина обращения: