Блог им. KonstantinChaschegorov

Взрослые программисты тоже играют в компьютерные игры.

Наверно не только меня одного в профессию программиста привела тяга к компьютерным играм. Все эти новые вселенные, стрелялки, полеты на немыслимых самолетах. Всегда хочется что-то узнать большее об управляемом персонаже, защитить его, правильно им управлять. Возможно даже вырастить его в немыслимого супергероя. С годами игры меняются. Остается главное – страсть к чему-то новому исследовательскому. Открутить колесико от одной машинки и прикрутить его к другой. А вдруг!

 Рис1.
Взрослые программисты тоже играют в компьютерные игры.

Самое главное в этом процессе играть самому. По своим правилам и своими игрушками. Пусть даже и не выиграть. Но самое главное самому и по своим правилам. Руководить собственным маленьким, подчиняющимся только тебе «терминатором». Начнем с выбора персонажа. Пусть это буду акции российских и иностранных компаний доступные обычному человеку на Московской бирже через терминал QUIK. Спасибо разработчикам терминала. Они предоставляют механизмы экспорта/импорта информации во внешние системы анализа. Платформа для создания бизнес-приложений логично вписывается в эту нишу. При этом концепция «low code» позволяет в одиночку создать и поддерживать свои правила игры на своем поле. Даже человек, который ранее никогда не программировал может в приемлемый срок освоить встроенный в 1С Предприятие язык программирования и начать управлять небольшой торговой системой, закладывая в нее свою логику.

 

Создадим себе возможность быстрого выбора персонажа, которым мы хотим управлять в текущую минуту.

Рис 2.
Взрослые программисты тоже играют в компьютерные игры.

Отличной возможностью быстро оценить нашего текущего персонажа является возможность вывода «живого графика» движений за последнее время.

Рис 3.
Взрослые программисты тоже играют в компьютерные игры.

Разработчики механизма «Живой график» отлично постарались. График не только регулярно обновляется, но и делает это каждый раз с различными спецэффектами. При переключении между графиками разных инструментов точки как живые скользят по поверхности, создавая эффект танца.

Но само собой у нашего текущего инструмента, как в любой игре должно быть детальное описание его возможностей.

Рис 4.
Взрослые программисты тоже играют в компьютерные игры.

При этом это должны быть не только заложенные биржей и установленные законодательством параметры, но и характеристики поведения «Биржевого инструмента».

Рис 5.
Взрослые программисты тоже играют в компьютерные игры.

Это могут быть как ценовые показатели, так и количественные.

Рис 6
Взрослые программисты тоже играют в компьютерные игры.

Рис 7.Взрослые программисты тоже играют в компьютерные игры.

Для принятия решения о текущем поведении инструмента необходимо проанализировать его разными средствами и подходами. На эту тему существует огромное количество теорий от математики до астрологии. Опишу некоторые из них.

Рис 8.Взрослые программисты тоже играют в компьютерные игры.

Первое, что приходит в голову это попытаться найти логику в хаотичном движении цен, предполагая, что одинаковые инструменты ведут себя одинаково на определенном интервале времени. Например, найти какой-то инструмент в прошлом, движения которого за четыре дня похожи на движения текущего инструмента за последние четыре дня. Соответственно попытаться предсказать каким будет пятый день. Со временем, конечно, мы узнаем, что современные технологии поменяли правила игры. И теперь паттерны, которые раньше работали, работает не только редко, но я бы сказал очень редко. Но оставим данный механизм. Пригодится.

 

 

 

Попытаемся прикрутить широко известные и доступные механизмы прогнозирования от разных производителей. Начнем со встроенных в платформу 1С механизмов анализа и прогнозирования: общей статистики, дерево решений и кластеризация.

 

Рис 9.
Взрослые программисты тоже играют в компьютерные игры.

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

Рис 10.
Взрослые программисты тоже играют в компьютерные игры.

Любому игроку нравится внести в игру свои правила. Для этого должна быть возможность вывода графиков каких только душа пожелает. А если таких нет, то дополнить самостоятельно. Хорошо что язык 1С понятен и доступен.

Рис 11.
Взрослые программисты тоже играют в компьютерные игры.

 На просторах всемирной паутины можно найти огромное количество советов и торговых стратегий на основании типовых индикаторов технического анализа. В помощь с нам приходит язык программирования Python для которого существуют соответствующие библиотеки. Воспользуемся двумя из них и случайным образом выберем стратегии для этих индикаторов.

Рис 12.
Взрослые программисты тоже играют в компьютерные игры.

Наличие таких стратегий отличный вариант. Но в современных условиях многие из классических алгоритмов могут и не работать. Чтобы четко понимать для каждого конкретного инструмента работает ли для него данная стратегия будем сразу и проверить на текущих и исторических данных. Для этого просто проверим для сигналов в прошлом сбылись ли их предсказания. Получим значения вероятностей срабатывания сигнала. Например 0,6 – Значит в прошлом сигнал для этого инструмента отрабатывал в 60 % случаев.

Рис 13.
Взрослые программисты тоже играют в компьютерные игры.

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

При этом по нажатию всего на одну кнопку мы можем расшифровать сигнал. Увидеть графически.

Рис 14.
Взрослые программисты тоже играют в компьютерные игры.

Собственная система предсказаний-это хорошо. Но вдруг она ошибется. Предусмотрим кнопки быстрого перехода на тематические сайты поиска информации.

Рис 15.
Взрослые программисты тоже играют в компьютерные игры.

Рис16
Взрослые программисты тоже играют в компьютерные игры.

Когда речь заходит о вероятности и статистике в голову, конечно, приходят классические знания. Частоты значений. Это либо частоты цен, либо частоты ночных скачков цен.

Рис 17.
Взрослые программисты тоже играют в компьютерные игры.

Рис18.
Взрослые программисты тоже играют в компьютерные игры.

На этапе, когда мы реализовывали стратегии на основе индикаторов технического анализа, пришлось реализовать расчет и отображение самих индикаторов технического анализа.

Получилось в сумме из двух библиотек более 120 технических индикаторов и графиков.

Рис 19.
Взрослые программисты тоже играют в компьютерные игры.

При этом график получается отличного качества и достаточно быстро переформируется для любого интервала. Это как раз тот механизм, который мы используем для расшифровки сигналов торговых стратегий.

Рис 20.
Взрослые программисты тоже играют в компьютерные игры.

У нас получилось сразу несколько возможностей построения графиков. Этот как механизмы языка Python. Так и встроенные в 1С типовые средства построения графиков и отчетов.

Рис 21.
Взрослые программисты тоже играют в компьютерные игры.

Рис 22
Взрослые программисты тоже играют в компьютерные игры.

Рис 23
Взрослые программисты тоже играют в компьютерные игры.




































7 комментариев
пусть тешатся… пока на биржу не вышли что еще делать как не играть…
avatar
ВладимирШмыгин, :)))). Эта игрушка через QUIK в реальном времени торгует автоматически.
Константин Чащегоров, Осталось дело за малым — чтобы она ещё и в профит торговала. 
avatar
карты вам в руки уважаемый… в чем проблема/?
avatar
ВладимирШмыгин, видимо проблема продать эту приблуду)
avatar
Friendly Deep Space, ЕГО проблема НЕ БОЛЕЕ.
avatar
Вы бы лучше для Квика нормальную коробку Ганна сделали. Народ бы покупал сам индикатор.
avatar

теги блога Биржевой Спекулянт Инвестор

....все тэги



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