
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Без трейлинга ещё можно было бы программно отследить запрещенную LONG-сделку по её стоплоссу и тейкпрофиту.
Но вот с тралом.... Даже не представляю как подойти к решению.. ..
Видимо, нужно предусмотреть блок, реализующий имитацию запрещенной сделки. Посмотрел примеры, но ничего похожего не нашел.
О чем речь, о конкретном эксперте или вообще ?
По-моему можно просто закомментировать блок открытия длинных позиций и все.
Нет. Так не получится. Если закомментировать блок открытия длиинных позиций, то получится вот что:
Например, у нас открылась короткая позиция. Закрылась. Потом у нас сигнал на длинную, но она не открывается т.к. запрещена (или закомментирована). Но через некот. время приходит сигнал на короткую и опять открывается короткая.
Но нам этого не надо. Т.к. в это время должна ещё (например) быть в рынке та длинная которую мы запретили (закомментировали).
Таким образом у нас при закомментировании будут все время открываться короткие позиции - те которые нам нужны. И ПЛЮС ТЕ КОТОРЫЕ НАМ НЕ НУЖНЫ ! Т.к. вместо длинных закомментированных позиций будут часто открываться совсем не нужные нам дополнительные короткие позиции!
а нам нужно, чтобы в то врямя, когда шла-бы запрещённая(закоментированная) длинная позиция, - чтобы в это время короткие не открывались!
Вот почему и нужна имитация длинных....
Вот почему и нужна имитация длинных....
Благодарю, 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 по приходу сигнала должно быть безусловным. Поэтому если есть проверка на успешность операции по открытию-закрытию позиции, то ее тоже нужно закомментировать.
Принципиально решение можно было бы сделать так:
leonid553, обращайтесь, прикручу вам к эксперту виртуальную торговлю. Недорого ;)
Сможете делать с позициями все что угодно.
Наверное, придется так и сделать. А вы, komposter, не забыли, что у меня позиции открываются с трейлингстопом? Да и ещё с вызовом библиотеки трейлинга!
Получится такая имитация?
Наверное, придется так и сделать. А вы, komposter, не забыли, что у меня позиции открываются с трейлингстопом? Да и ещё с вызовом библиотеки трейлинга!
Получится такая имитация?
Поэтому любые изменения в ордерах обрабатываются как в реале (только ошибок от сервера не бывает).
- трейлинг будет двигать виртуальный СЛ
- библиотека будет проверять, не слишком ли близко СЛ к текущей цене
- при подходе цены к виртуальному СЛ он (СЛ) сработает (виртуально)
Полная имитация реальной работы ;)
Принципиально решение можно было бы сделать так:
leonid553, обращайтесь, прикручу вам к эксперту виртуальную торговлю. Недорого ;)
Сможете делать с позициями все что угодно.
Я предложил Леониду элементарное решение вопроса. Рассчитанное на незначительную переделку кода, которую может сделать и не слишком умудренный в MQL. В том числе и Леонид. Бесплатно. При этом я даже не видел кода советника. И все равно могу сказать, что и ваш вопрос решается.
Вы можете сделать круче ? За недорого ? :-) Я в этом не сомневаюсь. Я тоже. Забесплатно. Будем конкурировать ?