Страница 2 из 3

Добавлено: Пн май 28, 2007 1:37 pm
Terranin
Komanch писал(а):А мне не хочет выдавать... :( Вставил для проверки такую строчку в код

...
temp:=FloatToSTR(info.StopLoss);
BreakPoint(1, temp);
...

Выдаётся в сообщении всякая близкая к нулю ерунда, на каждой свечке разная.
А ещё я не нашёл в справке описания, как обращаться с оптимизатором стратегий.
Из этого кусочка ничего не понятно, нужен полный код. С оптимизатором - выбираешь стратегию, потом открываешь параметры и ставишь какой-нибудь параметр от и до определенного значения с некоторым шагом изменения и запускаешь. Он прогонит стратегию изменяя этот параметр и нарисует кривые как менялись параметры.

Добавлено: Пн май 28, 2007 5:24 pm
Komanch
В прикреплённом файле полный код. Почему обнаружил непонятку - там у меня условие на подвижку стопа, куда входит сравнение со старым стопом, так вот условие не срабатывает, стоп не двигается. В сообщении выдаётся что 0 у меня стоп. Если пользоваться аналогичной функцией OrderStopLoss, то всё нормально, и двигается стоп, и в сообщении верно показывается.

Добавлено: Вт май 29, 2007 1:49 pm
Terranin
Komanch писал(а):В прикреплённом файле полный код. Почему обнаружил непонятку - там у меня условие на подвижку стопа, куда входит сравнение со старым стопом, так вот условие не срабатывает, стоп не двигается. В сообщении выдаётся что 0 у меня стоп. Если пользоваться аналогичной функцией OrderStopLoss, то всё нормально, и двигается стоп, и в сообщении верно показывается.
Сейчас проверил - вроде выдает правильный стоп лосс...

Добавлено: Вт май 29, 2007 5:05 pm
Komanch
:shock: Шайтан, однако!!! :?

Добавлено: Ср май 30, 2007 2:44 pm
Terranin
Я фиксил вроде какую-то ошибку с этой функцией то ли в последнем билде, то ли в том что готовится. Не помню. Вобщем подожди пару дней и я выложу новый билд. Там должно работать.

Добавлено: Ср май 30, 2007 4:48 pm
Komanch
OK! :)

Добавлено: Ср май 30, 2007 11:45 pm
Terranin
Komanch писал(а):OK! :)
Выложил новый билд.

Добавлено: Чт май 31, 2007 5:35 am
Komanch
:shock: Чё-та как-то быстро пара дней пролетели! Я и не заметил... :) Вечером буду пробовать.

Добавлено: Пн июн 04, 2007 5:02 pm
Komanch
Доброго времени суток! Запускаю программу на тестирование, и у меня начинают рисоваться на графике сами собой множество скользящих средних – на каждой свечке добавляется ещё одна с периодом на единицу больше. Получается как на рисунке (мувинги – желтые). Это глюк или чего-то где-то надо включить-выключить? Проявляется только при использовании пары EURUSD… Может, как-то связано с тем, что все стратегии на этой паре? Но использование стратегий отключено…
P. S. А функция GetOrderInfo вроде заработала, но наполовину - стопы вроде двигаются как задумано, но в сообщении всё равно показывается ноль!.. :shock:

Добавлено: Пн июн 04, 2007 7:45 pm
Terranin
Komanch писал(а):Доброго времени суток! Запускаю программу на тестирование, и у меня начинают рисоваться на графике сами собой множество скользящих средних – на каждой свечке добавляется ещё одна с периодом на единицу больше. Получается как на рисунке (мувинги – желтые). Это глюк или чего-то где-то надо включить-выключить? Проявляется только при использовании пары EURUSD… Может, как-то связано с тем, что все стратегии на этой паре? Но использование стратегий отключено…
P. S. А функция GetOrderInfo вроде заработала, но наполовину - стопы вроде двигаются как задумано, но в сообщении всё равно показывается ноль!.. :shock:
Оптимизатор стратегий наверное запускал? С перебором параметров. :) вот стратегия и навешала тебе мувингов. Удали их просто.

Добавлено: Ср июн 06, 2007 5:29 am
Komanch
Понятно... А сделать так, чтобы мувинги, ну и вообще индюки удалялись после использования нельзя? А то я запустил перебор параметра средней от 10 до 100, а компутер на 73-м варианте повис... Теперь понятно почему - расчёт 60-и мувингов - с такой задачей не каждый камень справится! :?
И ещё вопрос - оптимизатор у меня перебирает варианты только по одной переменной, хотя задаю три. Это так или чего-то включить надо?

Добавлено: Ср июн 06, 2007 1:13 pm
Terranin
Komanch писал(а):Понятно... А сделать так, чтобы мувинги, ну и вообще индюки удалялись после использования нельзя? А то я запустил перебор параметра средней от 10 до 100, а компутер на 73-м варианте повис... Теперь понятно почему - расчёт 60-и мувингов - с такой задачей не каждый камень справится! :?
И ещё вопрос - оптимизатор у меня перебирает варианты только по одной переменной, хотя задаю три. Это так или чего-то включить надо?
Вообще по идее должны были бы удаляться, надо будет посмотреть. Тут народ тестировал и 300 мувингов одновременно и говорят работает нормально. :)

Насчет перебора сделай скриншот параметров.

Добавлено: Пн июн 18, 2007 6:31 am
Komanch
Доброго времени суток! :) Вот скриншот параметров. Когда запускаю оптимизатор на тестирование, он перебирает их в таком порядке (SMA Period - Shift - DayOfTraling) 20-3-3, 21-4-4, 22-5-5, ..., 27-10-10, 28-10-10 и т. д. Т. е. не каждое значение с каждым, а сначала все, а потом одно, у которого диапазон больше.

Добавлено: Пн июн 18, 2007 6:37 am
Komanch
И ещё у меня вопрос - как в стратегиях обращаться к индикаторам, которые строятся в виде гистограммы. А именно, индикатор АО, у него два буфера, для зелёных столбиков, и для красных. Если на какой то свечке (на предыдущей, например) индюк растёт, соответственно, столбик будет зелёный, в соответствующем буфере будет значение индюка. Какое значение на этой свечке будет в "красном" буфере? Я прикинул, что по логике должно быть нулевое... Я прав?

Добавлено: Пн июн 18, 2007 1:43 pm
Terranin
Komanch писал(а):Доброго времени суток! :) Вот скриншот параметров. Когда запускаю оптимизатор на тестирование, он перебирает их в таком порядке (SMA Period - Shift - DayOfTraling) 20-3-3, 21-4-4, 22-5-5, ..., 27-10-10, 28-10-10 и т. д. Т. е. не каждое значение с каждым, а сначала все, а потом одно, у которого диапазон больше.
Знаю, руки до всего сразу не доходят. Сделал оптимизатор но народ прохладно к нему отнесся вот я его отложил в сторону пока.

Добавлено: Пн июн 18, 2007 1:45 pm
Terranin
Komanch писал(а):И ещё у меня вопрос - как в стратегиях обращаться к индикаторам, которые строятся в виде гистограммы. А именно, индикатор АО, у него два буфера, для зелёных столбиков, и для красных. Если на какой то свечке (на предыдущей, например) индюк растёт, соответственно, столбик будет зелёный, в соответствующем буфере будет значение индюка. Какое значение на этой свечке будет в "красном" буфере? Я прикинул, что по логике должно быть нулевое... Я прав?
Это зависит от того как индикатор считается. Если туда ничего не пишется то нулевое (по умолчанию если не задано другое процедурой SetEmptyValue).

Добавлено: Пн июн 18, 2007 1:49 pm
Komanch
Ладно, выясним... А насчёт оптимизатора - это вы с народом напрасно! :)

Добавлено: Пн июл 30, 2007 10:42 am
Komanch
Доброго времени суток! Опять вопрос у меня - каким образом можно проверить исполнен ли установленный мной отложенный ордер? Что-то в справке никак не найду...

Добавлено: Пн июл 30, 2007 1:17 pm
Terranin
Komanch писал(а):Доброго времени суток! Опять вопрос у меня - каким образом можно проверить исполнен ли установленный мной отложенный ордер? Что-то в справке никак не найду...
Если ордер исполнен то меняется его тип на tp_Buy или tp_Sell. Т.е. надо просто выбрать ордер по хендлу и проверить OrderType.

Добавлено: Вт июл 31, 2007 3:07 am
Komanch
Понятно, спасибо! Было бы удобно сделать такую проверку в виде отдельной функции, типа OrderClosed(), поскольку используется такая проверкадовольно часто, мне кажется...

Добавлено: Пт авг 17, 2007 7:36 am
Komanch
Доброго времени суток, Terranin. Вот ещё вопрос - при установке отложенного ордера в числе прочих параметров есть строка комментария. Где потом при работе стратегии при установке ордера этот комментарий появляется? Для отладки стратегии мне надо как-то отличать друг от друга однотипные ордера, поставленные в разных условиях, комментарий был бы очень кстати...

Добавлено: Пт авг 17, 2007 1:29 pm
Terranin
Komanch писал(а):Доброго времени суток, Terranin. Вот ещё вопрос - при установке отложенного ордера в числе прочих параметров есть строка комментария. Где потом при работе стратегии при установке ордера этот комментарий появляется? Для отладки стратегии мне надо как-то отличать друг от друга однотипные ордера, поставленные в разных условиях, комментарий был бы очень кстати...
Когда выбираете ордер процедурой OrderSelect() комментарий можно считать через OrderComment

Код: Выделить всё

if OrderSelect(0, SELECT_BY_POS, MODE_TRADES) then 
  if OrderComment = '123' then ...
Также можно считать MagicNumber через OrderMagicNumber

Добавлено: Вт сен 04, 2007 9:42 am
VVV
Такой вот странный момент :roll:

Мне для стратегии нужны два индикатора: ATR и ADX.

Код: Выделить всё

procedure ResetStrategy; stdcall;
var
s1:string;
s2:string;

begin
  OrderHandle := -1;

  s1:=(inttostr(periodATR)+';Close');
  s2:=(inttostr(periodADX)+';Close');

  ind2:=CreateIndicator(Currency, TimeFrame, 'ADX', s2);
  ind1:=CreateIndicator(Currency, TimeFrame, 'ATR', s1);                

  
end;
Но когда начинаю тестировать или просто проверяю создает ли тестер индикаторы, то получается, что создаёт он только один индикатор - тот который в програмном коде создаётся первый. В данном случае ADX, если строчки поменять местами будет только ATR :?

Перед началом теста удаляю все индикаторы, но в журнале пишет что нашёл второй индюк.Изображение
Как он его нашёл если его нет? :shock: :?

Такое случается и с некоторыми другими индикаторами, RSTL и RBCI например. От чего такое может быть? Уже пол дня сижу над этим... :(

Добавлено: Вт сен 04, 2007 3:27 pm
Terranin
Похоже бага, сравнивал по параметрам валюте и тамфрейму а имя забыл проверить. Исправил, выпущу обновление в ближайшие 2 дня. Эта бага проявляется только когда параметры 2х индикаторов полностью совпадают.

Добавлено: Вт сен 04, 2007 7:38 pm
VVV
Terranin писал(а):Похоже бага, сравнивал по параметрам валюте и тамфрейму а имя забыл проверить. Исправил, выпущу обновление в ближайшие 2 дня. Эта бага проявляется только когда параметры 2х индикаторов полностью совпадают.
Спасибо, будем ждать :)