Комментарии к постам Eugene Bright

Мои комментарии:в блогах в форуме
Ответы мне:в блогах в форуме
Все комментарии: к моим постам
Eugene Bright, гражданин
avatar
  • 07 декабря 2025, 23:11
  • Еще
Eugene Bright, почему хулиганский?
avatar
  • 28 августа 2025, 07:58
  • Еще
Prophetic, справедливое замечание, спасибо!
avatar
  • 19 августа 2025, 11:58
  • Еще
Каждый выбирает свою дорогу. Я тоже отказался от событийной модели достаточно быстро, и перешел на «циклы». Но везде есть свои плюсы и минусы. Когда у вас на одном ноуте одновременно работает пол сотни задач (задача = алгоритм + инструмент), то встает вопрос оптимизации ресурсов. И цикличная модель, в этом плане, мне нравится больше. Первые версии системы сжирали более 95% ресурсов CPU, и начинали тормозить всюд систему. Дальнейшие доработки занчительно снизили нагрузку, и ноут, кторому уже больше 10-ти лет, спокойно справляется с задачей торговой станции. Но я не занимаюсь HFT, и у меня достаточно ресурсоемкие алгоритмы, в части проводимых расчетов. Так что мне такой подход подходит, но он может оказаться не применим для некоторых других видов торговли.
Данные о транзакциях и заявках храню в файлах. Это защищает от сбоев, и позволяет легко восстанавливать работу после «перезагрузки».
Пример файла (под одну «задачу»):

<?xml version=«1.0»?>
<DealParam xmlns:xsi=«www.w3.org/2001/XMLSchema-instance» xmlns:xsd=«www.w3.org/2001/XMLSchema»>
<startTime>2025-08-18T18:37:14.5925157+03:00</startTime>
<lifeTimeDeal />
<posOperation>Open</posOperation>
<operation>Buy</operation>
<status>Closed</status>
<orderNumbers>
<long>69592992656</long>
</orderNumbers>
<securityCode>GAZP</securityCode>
<mailTo>v.hohlov@hotmail.com</mailTo>
<robotMode>work</robotMode>
<code_ts>InvestPortfolio.work</code_ts>
<signal>Portfolio.Buy.Buy.137,17</signal>
<positionID>InvestmentGAZPInvest.Bokovik.Long</positionID>
<targetQty>1</targetQty>
<limitMaxOrderQty>0</limitMaxOrderQty>
<qtytrades>1</qtytrades>
<old_toolqty>1180</old_toolqty>
<toolqty>1190</toolqty>
<transactionID>0</transactionID>
<targetPrice>137.18</targetPrice>
<limitPriceDeviation>0.2</limitPriceDeviation>
<price_trades>137.17</price_trades>
<price_entrance>132.32</price_entrance>
<stoploss>0</stoploss>
<takeprofit>0</takeprofit>
<takeprofit2>0</takeprofit2>
</DealParam>

В конечном итоге, я считаю, что важно не слишком усложнять процессы. Чем проще все реализовано, тем стабильнее и быстрее работает. Возникающие в процессе эксплуатации ошибки/сбои и т.п. конечно же ведут к доработкам, которые обычно усложняют процессы. И тут важно не переборщить

avatar
  • 19 августа 2025, 10:04
  • Еще
Synthetic, спасибо за корректность обращения!))
Да, я не являюсь профессиональным программистом и потому не знаю соответствующего сленга.

avatar
  • 18 августа 2025, 19:09
  • Еще
боты «крутят» циклы «по времени», а я предложил — «по событиям»

Извините. Вы просто выражаетесь своеобразно. Мы то вот так привыкли…
event-driven programming — парадигма программирования, в которой выполнение программы определяется событиями.
avatar
  • 18 августа 2025, 19:04
  • Еще
Synthetic, а Вы не поняли сути. Поздравляю.
Дело не в названии.
Дело в том, что боты «крутят» циклы «по времени», а я предложил — «по событиям». Разница, конечно, не очевидна… Но до тех пор, пока событие происходит в пределах времени «прокрутки» бота. Как только событие «опоздает», возникнет некий эксцесс непонимания ботом ситуации.
avatar
  • 18 августа 2025, 18:18
  • Еще
Идея такова:

Поздравляю!
Вы заново изобрели такую важную и полезную штуку как «транзакция».
avatar
  • 18 августа 2025, 17:38
  • Еще
nicknh, не ловил, честно))
Но мне не нужно проверять поле на наличие ВСЕХ граблей. Мне достаточно наступить на пару-другую, коими и оказались приведенные в тексте коллбеки.
Но я предполагал, что возможны и такие «подарки», что привели Вы.
Я уже не первый пост упоминаю о Системе Управленческого (внутреннего) Учета в моем боте. Он ведет все параметры торгов автономно, периодически сравнивая с QUIK'ом, но имея при этом приоритет.
Бот только транслирует данные УУ в терминал.

ЗЫ: в смысле «считывания показателей датчиков» мы с Вами, в принципе, соратники.
avatar
  • 18 августа 2025, 16:06
  • Еще

Очень давно, почти сразу перестал использовать колбеки. Подход как для чтения данных с датчиков как в системах реального времени — самое надежное решение. Опять же мы же про деньги говорим, а не про картинки с котиками.

 

Это Вы, наверно, еще не ловили искажение индексов таблицы ордеров после вызова колбека OnCleanUp, который брокер вызывает после принудительного разрыва соединения. Писал про это forum.quik.ru/forum10/topic9201/

avatar
  • 18 августа 2025, 15:58
  • Еще
Eugene Bright, Свой индюк я придумал и создал его первую версию в 2016 году. С тех пор несколько раз его дорабатывал, т.к. действительно алгоритм обновления уровней (включая период анализа) это достаточно сложный и многогранный вопрос. Отказываться от него пока не планирую. Он мне все еще нравится, хотя назвать его идеальным я конечно же не смогу. С другой стороны, учитывая свой возраст, и изменение подхода к торговле, лет через 5, если не случится какого-то значимого прорыва в моих стратегиях, все это уже не будет иметь значения, т.к. все мои усилия сведутся к получению пассивного дохода, в виде стабильного денежного потока.
avatar
  • 14 августа 2025, 14:00
  • Еще
Prophetic, это очень хорошие скрины! Спасибо.
Временные убытки — ерунда.

Кстати, Вы используете инструмент, от которого я отказался лет 10 назад. Не осилил алгоритмизацию вычислений уровней. Постоянно приходилось подбирать периоды расчета. Ушел в нотации, где периоды не учитываются.
avatar
  • 14 августа 2025, 13:19
  • Еще
Eugene Bright, Забыл добавить: Индикатор собственной разработки. Первая сделка, как Вы наверное уже догадались, была убыточная.
avatar
  • 14 августа 2025, 13:15
  • Еще
Виталий Зотов, А зачем Вы сами нападаете на человека? Делиться мнением с другими в надежде, что и с тобой тоже поделяться мнением — это НОРМАЛЬНО.  Это позволяет развиваться и не застрять в тупике собственных заблуждений. И такой пост точно в 100 раз лучше, чем какой-нибудь высер с копипастом и рекламой собственного говно-канала.
avatar
  • 14 августа 2025, 13:12
  • Еще
Prophetic, спасибо за вежливость, прежде всего.
По скринам: очень симпатичные трейды по уровням. Поздравляю!
avatar
  • 14 августа 2025, 13:10
  • Еще
Eugene Bright, во-первых: спасибо за ответ. Теперь мои комментарии по пунктам:
1. Я примерно так и предполагал. Спасибо за уточнение.
2. Понятно. Отсутствие этого пояснения вызывало некоторое непонимание.
3. Да, я Вас понимаю, и не настаиваю на подробностях Просто интересно понять ход Ваших мыслей, и сравнить со своим взглядом. Я в любом случае отказался от реализации данной идеи, и практически полностью переключился на инвестиционные стратегии. Хотя, некоторые эксперименты проводить продолжаю. Так что конкурента в моем лице в стакане можете не ждать ;) А вот для общего развития почитать и подумать еще раз было интересно. Спасибо Вам за предоставленную возможность. Искренне желаю Вам успешной торговли.

З.Ы.: Чтобы Вы случайно не подумали, что я только беру и ничего не даю. Вот Вам «алаверды» — мои сегодняшние реальные сделки наглядно по одной из стратегий:
avatar
  • 14 августа 2025, 13:06
  • Еще
RoboScalp, да, у меня идет постепенный набор позиции по minLot до суммарного объема maxVolume = 3*minLot, т.е. первые 3 трендовых сигнала выставили по 1 ордеру каждый объемом minLot.
Остальные сигналы — только для подавления сеточных сигналов.
В момент ослабления тренда эти сеточные сигналы были выданы, но, поскольку они были даны в том же направлении, что и открытая позиция (которая уже была заполнена), то по сеточным сигналам ордера также не выставились.
avatar
  • 14 августа 2025, 12:54
  • Еще
Eugene Bright, скажите, а в представленном примере хоть один из сигналов привел к выставлению ордера?
avatar
  • 14 августа 2025, 12:33
  • Еще
Prophetic, по порядку заданных вопросов:
1. Для определения разворота ВВЕРХ я беру именно разницу Close — Low(-1); для определения разворота ВНИЗ — разницу High(-1) — Close. Хотя можно, конечно, использовать только Close. Однако, опыт последних лет показал, что этот переход нужно выделять в отдельную автоматически определяемую опцию. Как ни странно, но волатильность помогает определить точнее, что именно нужно брать для расчетов — Закрытие бара или его экстремумы.
2. Но эта линия и устанавливается в качестве тренда со всеми его атрибутами и свойствами. Например, считается, что изменение цены имеет трендовый характер, пока цена не пересекает тренд в противоположном направлении. Тогда эта линия считается сломанным трендом и дает сигнал разворота.
3. Подробные рисунки размещать не стал, ибо это уже будет полное «засвечивание» моей стратегии. А это (как и опубликование подробного стейтмента), как Вы должны понимать, полностью раскроет мою стратегию. Что ваще-та есть некое ноу-хау.))
Вот пример сегодняшнего утра в SRU5:

Пояснение:
sell — это трендовые сигналы,
short — это сеточный сигнал, возникший в период временного затухания нисходящего тренда.
З.Ы.: да разночтения есть и будут.
avatar
  • 14 августа 2025, 11:07
  • Еще
Выберите надежного брокера, чтобы начать зарабатывать на бирже:
....все тэги
UPDONW
Новый дизайн