- Уважаемые профи, помогите советом!
- Подскажите пожалуйста, как нужно что бы при каждом сигнале открывал новый ордер в том же направлении к примеру Buy
- [АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3.
Доброго времени суток! Други помогите пожалуйста, код трейлинг-стопа. К примеру по сигналу советник открывает ордер на бай, при этом советник находит мин. лоу за последние 3 бара, т.е. в советнике это номера баров 1,2,3. Разность между ценой открытия и мин. лоу и есть величина трейлинг-стопа. При этом получается для каждой сделки свой трейлинг, предполагается множество открытие сделок. Есть те кто сталкивался с такой задачей или хочет заморочится. Зарание Спасибо.
1. Идите по всем ордерам вашего эксперта
2. Берите цену открытия,
3. Анализируйте последние 3 бара от бара открытия (время открытия ордера вам известно)
4. Двигайте стоплос на новое место по найденной величине.
Этот алгоритм будет немного медленным, так как вам на каждом тике надо обарбатывать 3 бара.
-------------------------------
Воторй вариант:
1. При открытии ордера создаёте глобальную переменную с именем - номер тикет+некоторый ID вашей системы. В эту переменную кидаете найденное расстояние по 3 барам.
2. Затем в блоке движения ордеров просто читаете это значение (тикет ордера вам известен) и двигаете стоплос на нужную величину.
Этот вариант возможен сбой, если терминал завершает работу аварийно.
-------------------------------
ну и третий варинат с массивами наверно лучший из предложенных-
всё тоже самое как и в первом варианте - но расстояния вы вычисляете только один раз в момент инициализации советника.
Идентификацию ордера и его расстояния делайте по номеру тикета. Вам прийдётся постоянно пробегать по всему массиву и искать в нём тикет нужного одрера. Если ордер не найден, то надо вычислить расстояние и занести его в массив.
--------------------------
Итого три варианта - каждый по своему удобен
Первый - по своей тупости и простоте, но медленный
Второй - для быстрой идентификации и поиска, но возхможен сбой при аварийной выгрузке терминала
Третий - для скорости, но в нём сложность при поиске нужного тикета в массиве.
Mas[10][100]; //для 10 ордеров имеющих 100 показателей
читай справку!
для онлайна ещё нужно сохранять данные массива и соответственно читать!

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования