Общие вопросы по разработке > Живой бар
Re: Живой бар
Евгений (evge), добрый вечер.
У вас есть варианты реализации "живого" бара?
Покажите пожалуйста сам принцип и как его реализовать (с исходным кодом стратегии).
У вас есть варианты реализации "живого" бара?
Покажите пожалуйста сам принцип и как его реализовать (с исходным кодом стратегии).
- evge
- Администратор
- Сообщения: 1812
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: Живой бар
Добрый вечер.
Нет, у меня кода нет. "Живой" бар не использовал. Но в целом всё просто, описано в документации. Добавляйте настройки эти в Initialize() и всё заработает.
UseClosedBar – настройка, позволяющая вызывать код метода OnUpdate() внутри бара (по приходу новых сделок). Если в коде указано UseClosedBar = false, то вызов метода будет происходить внутри бара не чаще чем один раз в LiveBarTimeout секунд.
Тестирование стратегии с UseClosedBar = false невозможно. Предварительно оценить ее эффективность можно в режиме робота-советника.
Пример.
OneSignalOnBar – флаг позволяет отправлять несколько торговых команд на одном баре. Значение флага по умолчанию true. Для включения опции множество сигналов на одном баре используйте
OneSignalOnBar = false;
Внимание!
Использование флага OneSignalOnBar = false (множественного исполнения сделок на одном баре) совместно с флагом UseClosedBar = false (проверка условий робота внутри бара) может приводить к большому числу сделок на одном баре.
Обратите внимание, что использование данного флага также позволит роботу отправлять несколько торговых команд за один проход вызова функции OnUpdate.
Для примера накидал простую стратегию:
Если цена (Close) выше чем High предыдущего бара, то продаем.
Если цена (Close) ниже чем Low предыдущего бара, то покупаем.
Если позиция открыта и цена (Close) вернулось в рамки предыдущего бара, т.е. текущего бара Close между Low и High предыдущего, то позиция закрывается.
Нет, у меня кода нет. "Живой" бар не использовал. Но в целом всё просто, описано в документации. Добавляйте настройки эти в Initialize() и всё заработает.
UseClosedBar – настройка, позволяющая вызывать код метода OnUpdate() внутри бара (по приходу новых сделок). Если в коде указано UseClosedBar = false, то вызов метода будет происходить внутри бара не чаще чем один раз в LiveBarTimeout секунд.
Тестирование стратегии с UseClosedBar = false невозможно. Предварительно оценить ее эффективность можно в режиме робота-советника.
Пример.
Код: Выделить всё
UseClosedBar = false;
LiveBarTimeout = 10; // Вызывать не чаще чем раз в 10 секунд
OneSignalOnBar – флаг позволяет отправлять несколько торговых команд на одном баре. Значение флага по умолчанию true. Для включения опции множество сигналов на одном баре используйте
OneSignalOnBar = false;
Внимание!
Использование флага OneSignalOnBar = false (множественного исполнения сделок на одном баре) совместно с флагом UseClosedBar = false (проверка условий робота внутри бара) может приводить к большому числу сделок на одном баре.
Обратите внимание, что использование данного флага также позволит роботу отправлять несколько торговых команд за один проход вызова функции OnUpdate.
Для примера накидал простую стратегию:
Если цена (Close) выше чем High предыдущего бара, то продаем.
Если цена (Close) ниже чем Low предыдущего бара, то покупаем.
Если позиция открыта и цена (Close) вернулось в рамки предыдущего бара, т.е. текущего бара Close между Low и High предыдущего, то позиция закрывается.
Код: Выделить всё
function Initialize()
{
StrategyName = "LiveBar";
AddParameter("P1", 0, "", 1);
AddInput("Input1", Inputs.Candle, 1, true, "");
LongLimit = 0;
ShortLimit = 0;
//настройка для "живого" бара
UseClosedBar = false;
LiveBarTimeout = 10;
OneSignalOnBar = false;
}
function OnUpdate()
{
if (Input1.Close[0] > Input1.High[1]) EnterShort();
if (Input1.Close[0] < Input1.Low[1]) EnterLong();
if (CurrentPosition() != 0)
if (Input1.Close[0] > Input1.Low[1] && Input1.Close[0] < Input1.High[1]) ClosePosition();
}
никогда такого не было и вот опять
Re: "Живой" бар и мультитаймфрейм
Спасибо Евгений комментарии по "живому" бару.
Также на вебинаре анонсировался мультитаймфрейм.
Вам удалось уже его реализовать и протестировать в работе?
Буду благодарен за код!
Также на вебинаре анонсировался мультитаймфрейм.
Вам удалось уже его реализовать и протестировать в работе?
Буду благодарен за код!
- evge
- Администратор
- Сообщения: 1812
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: Живой бар
Анонсировали когда?
Если появится, то конечно это прорыв будет для АД4
Я пока не в курсе. Говорится давно об этом.
Если появится, то конечно это прорыв будет для АД4
Я пока не в курсе. Говорится давно об этом.
никогда такого не было и вот опять
Re: Живой бар
Анонсировал Дмитрий, на том же летнем вебинаре. Кстати очень полезная была информация для начинающих и пользуясь случаем ему отдельное спасибо здесь!
Может если он увидит переписку здесь, то и прокомментирует ситуацию с мультитаймфреймом. Возможно я не корректно его понял по поводу времени когда он появиться, но то что работы шли в этом направлении это факт, и к осени он должен был выйти в свет!
Может если он увидит переписку здесь, то и прокомментирует ситуацию с мультитаймфреймом. Возможно я не корректно его понял по поводу времени когда он появиться, но то что работы шли в этом направлении это факт, и к осени он должен был выйти в свет!
Re: Живой бар
Живой бар был реализован в прошлом обновлении. Но осталась проблема, что одновременно на баре может быть только одна торговая и одна стоповая заявки. Причем при попытке проверить работу живого бара, у меня лично, получается, что заявка выставляется внутри бара, а вот выполнение все равно только на закрытии.
Вернуться в «Общие вопросы по разработке»
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя