Блог им. t-trade

Мааааленькая ошибка может стоить БОЛЬШИХ денег!

Мааааленькая ошибка может стоить БОЛЬШИХ денег!

В конце поста будет пару слов про эту картинку, а пока что про 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! Подробности и скидки тут...

495 | ★8
6 комментариев
обычно кто сливает тот всегда эквити перпендикулярно растущую показывает.
avatar
дык
var: counter(0);
if open<close then counter=1;
counter=0;
if counter=1 then sell short this bar close;

шикарный код
в 98 процентах покажет доходность больше чем у большинства :)

а вообще реально был случай когда нашел багу в самой винде.
пол года бился над ошибкой — пересмотрел все что можно — а бага была не у меня.
avatar
Простите, а для чего счетчик в данном случае, и почему нельзя просто продать после растущей свечи без счетчика?
avatar
Denoy.ru, Прощаю. «Пример высосан из пальца, на самом деле здесь никакой счетчик не нужен. Просто хочу показать важность правильной очередности частей кода. „

Читайте на SMART-LAB:
Фото
1 квартал 2026 года в РосДорБанке: старт года на «пятёрку»
По итогам 1 квартала 2026 года Банк демонстрирует уверенное следование тактике, заложенной в новой Стратегии развития до 2028 года. В...
Софтлайн обжалует определение суда об обеспечительных мерах
❓ Что произошло? В рамках одного из судебных процессов Арбитражным судом г. Москвы были приняты временные обеспечительные меры, которые затронули...
Займер – на первом месте по чистой прибыли среди независимых МФО
«Эксперт РА» опубликовал рэнкинги  МФО за 2025 год. Сразу по нескольким параметрам Займер занимает ведущие позиции: 🔶 1 место по чистой прибыли...
Фото
Русснефть: полицейский разворот прибыли в нефтянке - все видно в 1-м квартале по РСБУ
Русснефть — не самый интересный актив на просторах российского нефтегаза. Мутный мажоритарий, не платит дивиденды, но многих привлекает график, где...

теги блога Иван Коваль-Зайцев

....все тэги



UPDONW
Новый дизайн