Автор Тема: EasyLanguage  (Прочитано 4697 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн MaksimZZ

  • Сообщений: 34
    • Просмотр профиля
EasyLanguage
« Ответ #170 : 25 Март 2019, 16:20:36 »
спасибо большое за ответ, но результат тот же.

опишу смысл словами:

формула должна просматривать 30 объемов (volume) назад и считать число их попаданий в границы, которые рассчитаны на текущем баре.

№бара в скользящем окне  volume  границы нижн  границы верхн
...                                       ...         ...                     ...
25                                      10         20                    50
26                                      51         31                    35
27                                      15         40                    41
28                                      20         25                    30
29                                      21         12                    20
30                                      22         9                      15

цель чтобы функция countif при проверке условия на последних тридцати барах использовала границы, рассчитанные на тридцатом баре скользящего окна (т.е. в данном случае 9 - 15).

Спасибо.

Оффлайн Станислав

  • Участник клуба
  • *
  • Сообщений: 154
    • Просмотр профиля
EasyLanguage
« Ответ #171 : 25 Март 2019, 16:27:40 »
спасибо большое за ответ, но результат тот же.

опишу смысл словами:

формула должна просматривать 30 объемов (volume) назад и считать число их попаданий в границы, которые рассчитаны на текущем баре.

№бара  volume  границы нижн  границы верхн
...         ...         ...                     ...
25        10         20                    50
26        51         31                    35
27        15         40                    41
28        20         25                    30
29        21         12                    20
30        22         9                      15

мне нужно чтобы функция countif при проверке условия на последних тридцати барах использовала границы рассчитанные на тридцатом баре скользящего окна (т.е. в данном случае 9 - 15).

Спасибо.
для такой задачи countIF не подойдёт, её надо доработать...


LevelUp = значение верхней границы;
LevelDn = значение нижней границы;
Length = 30;
Sum = 0;
for Value1 = 0 to Length - 1 begin
   if tickvolume[Value1] <= LevelUp AND
      tickvolume[Value1] >= LevelDn
   then Sum = Sum + 1;
end;


Оффлайн MaksimZZ

  • Сообщений: 34
    • Просмотр профиля
EasyLanguage
« Ответ #172 : 25 Март 2019, 16:46:13 »
спасибо огромное!!! работает как часы.

Оффлайн MaksimZZ

  • Сообщений: 34
    • Просмотр профиля
EasyLanguage
« Ответ #173 : 12 Апрель 2019, 09:52:41 »
Подскажите пожалуйста, как бороться с этой ошибкой при добавлении индикатора, можно ли как-то увеличить допустимое число трендовых линий, T.S. 8.2 не ругалась на добавляемый индикатор, а T.S. 9.1 выдает ошибку.

Error: Exceeded the maximum number of Trendlines allowed on this chart. Excessive use of Trendlines causes decreased performance. Please adjust analysis technique to dispose of unneeded Trendlines. Call Stack


Оффлайн Станислав

  • Участник клуба
  • *
  • Сообщений: 154
    • Просмотр профиля
EasyLanguage
« Ответ #174 : 12 Апрель 2019, 14:18:21 »
Скриншот экрана покажите! Скорее всего с кодом проблемы...а лучше сделайте в коде подсчёт количества создаваемых трендовых линий!

Подскажите пожалуйста, как бороться с этой ошибкой при добавлении индикатора, можно ли как-то увеличить допустимое число трендовых линий, T.S. 8.2 не ругалась на добавляемый индикатор, а T.S. 9.1 выдает ошибку.

Error: Exceeded the maximum number of Trendlines allowed on this chart. Excessive use of Trendlines causes decreased performance. Please adjust analysis technique to dispose of unneeded Trendlines. Call Stack

Оффлайн MaksimZZ

  • Сообщений: 34
    • Просмотр профиля
EasyLanguage
« Ответ #175 : 12 Апрель 2019, 18:18:17 »
К сожалению код залочен. Но на 8.2 он работал.

Скрин:

ila_rendered

Думал может где-то в интерфейсе есть ограничитель типа максбарсбэк.

Кстати, для старых версий выкладывали утилиту для просмотра залоченного кода. Вам не попадалась случайно для 9.1

Оффлайн Станислав

  • Участник клуба
  • *
  • Сообщений: 154
    • Просмотр профиля
EasyLanguage
« Ответ #176 : 14 Апрель 2019, 08:09:40 »
не встречал подобных утилит по снятию блокировок! хотя они не особо и нужны, если представляешь механизм, как он должен работать, то его проще написать самому, и понятней будет и для развития полезно :)


К сожалению код залочен. Но на 8.2 он работал.

Скрин:

(Ссылка на вложение)

Думал может где-то в интерфейсе есть ограничитель типа максбарсбэк.

Кстати, для старых версий выкладывали утилиту для просмотра залоченного кода. Вам не попадалась случайно для 9.1

Оффлайн MaksimZZ

  • Сообщений: 34
    • Просмотр профиля
EasyLanguage
« Ответ #177 : 16 Апрель 2019, 14:40:30 »
Этим и занят ;)

Оффлайн MaksimZZ

  • Сообщений: 34
    • Просмотр профиля
EasyLanguage
« Ответ #178 : 16 Апрель 2019, 15:09:55 »
Как может быть такая фигня?

Пишу в первой строчке кода такую команду:

if barnumber=1 then Print(date,";",time);

A Print Log выдает такой результат:

980102.00; 130.00
980102.00; 200.00
980102.00;1630.00
980102.00;1700.00
980102.00;1730.00
980102.00;1800.00

Оффлайн MaksimZZ

  • Сообщений: 34
    • Просмотр профиля
EasyLanguage
« Ответ #179 : 25 Апрель 2019, 16:48:54 »
Такая проблема:

Написал индикатор работает корректно, MaxBarsBack детектируется автоматом в разумных пределах.

Решил превратить индикатор в стратегию добавил всего две строки и сохранил в strategies:

If LH4=0.05 and LH4[1]>0.05 then Buy ( "long1" ) 1 shares next bar at market;

If HL4=0.05 and HL4[1]>0.05 then Sell from entry ( "long1" ) next bar at market;

При попытке запустить стратегию для расчета сделок в TS 8.2 вылетает ошибка MaxBarsBack, TS 9.1 просто мечется между waiting data... и attributes..., горит черный экран.

В TS 8.2 стратегия запустилась при параметре MaxBarsBack 40.000, TS 9.1 с таким значением висит.

Пробую в стратегии вообще отключить фигурными скобками две строчки приведенные выше, все равно ошибка MaxBarsBack в TS 8.2 и темный экран в TS 9.1.

Т.е. после отключения торговых строчек код стратегии это копия кода индикатора, который прекрасно работает с MaxBarsBack до 300. Почему же тогда TS не считает этот же код сохраненный и запущенный как стратегия.

Помогите пожалуйста, бьюсь не могу понять!