В конце поста будет пару слов про эту картинку, а пока что про Easy Language.
А знаете ли Вы, что очередность записей в коде на языке Easy (power) Language огого как важна?! Вот такой пример: Если свеча растущая, то сделать счетчик равным единице. Если счетчик показывает 1 — продать. А счетчик нужно сбрасывать на каждой свечке.
Пример высосан из пальца, на самом деле здесь никакой счетчик не нужен. Просто хочу показать важность правильной очередности частей кода.
Если мы напишем так:
var: counter(0);
if open<close then counter=1;
if counter=1 then sell short this bar close;
counter=0;
Вот в таком коде сделки будут совершаться, а счетчик сбрасываться на ноль, всё будет хорошо.
И вот так всё будет хорошо:
var: counter(0);
counter=0;
if open<close then counter=1;
if counter=1 then sell short this bar close;
А вот если мы поместим сброс счетчика на 0 после расчета, но до совершения сделки, то ни одной позиции открыто не будет:
var: counter(0);
if open<close then counter=1;
counter=0;
if counter=1 then sell short this bar close;
На первый взгляд возникает вопрос — НО ПОЧЕМУ??? Ведь в какой-то момент счетчик становится равным единице, а когда он равен единице — нужно продавать! Но потом мы вспоминаем: Easy Language не ищет подходящие формации на графике. Вместо этого он читает код слева направо, сверху вниз на
каждой свечке. А значит, к моменту, когда программа дочитает до момента совершения сделки, счетчик всегда будет на нуле. Очередность важна!
P.S. А чтобы получить картинку, которая в начале поста, достаточно продавать после каждой растущей минутки и покупать после каждой падающей. С пирамидингом, а как же! Конечно, если добавить комисс и проскальзывание, этот график превратится в очень быстро теряющий деньги. Но если двигаться в этом направлении, можно найти интересную идею...
P.P.S. Это был очередной такой минипост из серии по программированию на языке Easy Language. Если интересно,
вот тут собраны все остальные из серии. Ну а ещё хочу сказать, что идет набор группы на курс по Easy Language!
Подробности и скидки тут...
var: counter(0);
if open<close then counter=1;
counter=0;
if counter=1 then sell short this bar close;
шикарный код
в 98 процентах покажет доходность больше чем у большинства :)
а вообще реально был случай когда нашел багу в самой винде.
пол года бился над ошибкой — пересмотрел все что можно — а бага была не у меня.