Страница 1 из 1
Определение начала следующей свечи
Добавлено: Ср авг 09, 2006 1:27 pm
Smile
var
OpenTime: TDateTime;
в процедуре:
if OpenTime<>Time(0) then
begin
SendInstantOrder(Symbol,ot_Sell,LotSize, Loss, 0, OrderHandle);
OpenTime:=Time(0);
end;
Добавлено: Ср авг 09, 2006 8:44 pm
Terranin
Лучше назвать "определение начала следующей свечи".
Лирическое отступление:
Стратегия может работать одновременно по всем валютам и по всем таймфреймам. Это означает что в стратегию приходят тики от всех валют и если стратегия работает только по одной она должна делать проверку на соответствие заданной валюте (при входе в процедуру уже установлены предопределеные переменные дающие информацию по тику Symbol, Bid, Ask):
Код: Выделить всё
var
OurCurrency: PChar;
...
if OurCurrency <> Symbol then
exit;
Далее если мы работаем по какому-то конкретному таймфрейму мы должны установить валюту и таймфрейм:
Код: Выделить всё
SetCurrencyAndTimeframe(OurCurrency, PERIOD_M15);
Мы можем сменить валюту и таймфрейм в любой момент по ходу исполнения программы чтобы получить доступ к другим данным. Теперь мы можем обращаться к массивам баров. Например чтобы определить что появился новый бар:
Код: Выделить всё
var
LastTime: TDateTime;
// проверка что изменилось время последнего бара в нужном
// таймфрейме
if Time(0) <> LastTime then
begin
....
LastTime := Time(0);
end;
Добавлено: Чт авг 10, 2006 12:53 pm
Smile
Уже назвал