Вопрос по программированию
Atom
31.01.2011
Mihailo


Привет, друзья. Начал изучать мануал и программировать своего роботика. Подскажите пожалуйста. Допустим вследствие каких-либо причин у меня сработал сигнал на открытие позиции. Но я хочу сделать "проверку временем". Нужно после получения сигнала подождать 5 минут, и если сигнал все еще актуален , то только тогда открывать позицию. Как это можно реализовать? (возможно в S# есть такая функция или переменная) Заранее спасибо.


Теги:


Спасибо:


Alexander

Фотография
Дата: 01.02.2011
Ответить


Mihailo: Привет, друзья. Начал изучать мануал и программировать своего роботика. Подскажите пожалуйста. Допустим вследствие каких-либо причин у меня сработал сигнал на открытие позиции. Но я хочу сделать "проверку временем". Нужно после получения сигнала подождать 5 минут, и если сигнал все еще актуален , то только тогда открывать позицию. Как это можно реализовать? (возможно в S# есть такая функция или переменная) Заранее спасибо.

Появился сигнал - запомнили: var signalDateTime = DateTime.Now;

дальше смотрим разницу if (DateTime.Now - signalDateTime >= new TimeSpan(0, 5, 0)) { //входим }

Спасибо:

Mihailo

Фотография
Дата: 01.02.2011
Ответить


Появился сигнал - запомнили: var signalDateTime = DateTime.Now;

дальше смотрим разницу if (DateTime.Now - signalDateTime >= new TimeSpan(0, 5, 0)) { //входим }

А программа новых сигналов не наделает? Нужно что-бы было так: Появился сигнал и программа больше ни на что не смотрит пока 5 мин не пройдет и не будет ясности исполнять сигнал или нет.

Спасибо:

dart

Фотография
Дата: 01.02.2011
Ответить


Mihailo: А программа новых сигналов не наделает? Нужно что-бы было так: Появился сигнал и программа больше ни на что не смотрит пока 5 мин не пройдет и не будет ясности исполнять сигнал или нет. if (condition_to_buy == true && flag_sleep == 0) if ( flag_sleep == 1 && base.Trader.MarketTime >= signalDateTime.AddMinutes(5) && condition_to_buy == true) { Buy; flag_sleep = 0;
} Насчет новых сигналов, всё зависит от вашего кода, есть там сигналы или нет. По прошествии 5 минут, если условие на покупку уже не действительно, можно обнулить этот сигнал и ждать появления нового: if (base.Trader.MarketTime > signalDateTime.AddMinutes(5)) flag_sleep = 0;

Спасибо:

Mihailo

Фотография
Дата: 15.02.2011
Ответить


еще подскажите пожалуйста. приведите пожалуйста пример кода стратегии, где сигнал возникает при пробитии максимума за 5 периодов например. а то вожусь и ничего сделать не получается. заранее спасибо.

Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy