коллега, интересуется: как в скрипте WLD4 Pro ограничить количество сделок за 1 календарный день,
сам не помню, но подозреваю что как то через «PositionCount».
Cпасибо.
for Bar := 20 to BarCount — 3 do // основной цикл
begin
if GetDay( Bar ) > GetDay( Bar-1 ) then pointer := true; // с переходом на новый день сбрасываем счетчик
if (pointer) then
begin //блок открытия позиций
… // правила открытия
if LastPositionActive then pointer := false;
end;
Тут только одна в день будет. Для N сделок вот так.
var pointer, N: integer
for Bar := 20 to BarCount — 3 do // основной цикл
begin
if GetDay( Bar ) > GetDay( Bar-1 ) then pointer := 0; // с переходом на новый день сбрасываем счетчик
if (pointer<N+1) then
begin //блок открытия позиции
… // новая позиция открыта
if LastPositionActive then pointer := pointer+1;
end;
DoxodVoborot, ну это грубы подсчёт. Правильно нужно дождаться отчёта за год. Из прибыли вычитать ИП. Из остатка уже берут 50%. Оттуда вычитать дивы за первый кв. Это и будут оставшиеся дивы по году
Кай Лёд, у меня назревает вопрос: откупают шорты открытые выше? или реально кто-то берет в лонг при текущих ситуации/ожиданиях до конца месяца. Вот первый вариант более реалистичный, ожидали снижен...
botlib, именно что «на глазок». Открываете график изменения цены за последние три недели и смотрите. Получается, что за это время цена устаканилась в районе 90 рублей. Если будем месяц торговаться ...
for Bar := 20 to BarCount — 3 do // основной цикл
begin
if GetDay( Bar ) > GetDay( Bar-1 ) then pointer := true; // с переходом на новый день сбрасываем счетчик
if (pointer) then
begin //блок открытия позиций
… // правила открытия
if LastPositionActive then pointer := false;
end;
end; // конец основного цикла
а количество сделок в каком месте задается?
var pointer, N: integer
for Bar := 20 to BarCount — 3 do // основной цикл
begin
if GetDay( Bar ) > GetDay( Bar-1 ) then pointer := 0; // с переходом на новый день сбрасываем счетчик
if (pointer<N+1) then
begin //блок открытия позиции
… // новая позиция открыта
if LastPositionActive then pointer := pointer+1;
end;
end; // конец основного цикла