Избранное трейдера Snegovik

по

Python-->Lua-->Квик. Управление заявками в Квике из Питона.

Всем привет!
То о чем так долго мечтали большевики — свершилось!
Представляю QLua-сервер для управления заявками в Квике Квиком. Как обычно, в несколько строк кода.


( Читать дальше )

Python. Делаем тестер стратегий и... зарабатываем на случайном блуждании.

    • 19 июня 2020, 16:32
    • |
    • 3Qu
  • Еще

Если вам кто нибудь скажет, что на случайном блуждании (СБ) нельзя зарабатывать, бросьте в него камень. Как говорил Паниковский — это жалкие ничтожные люди. На СБ можно зарабатывать с результатами не хуже, чем на реальном рынке. У СБ, по сравнению с реальным рынком, только один недостаток — за игры с СБ никто деньги платить не будет.
А если бы платили? Никто бы ничего не заметил. По прежнему 95% СБ-трейдеров сливало бы депозиты, а 5% регулярно выигрывало и считало бы себя Гуру. По прежнему на графики наносились бы каббалистические знаки и индикаторы, угадывались бы направления движения, каналы, и линии поддержки/сопротивления. Все так же начинающие трейдеры искали Учителя для обучения, а аналитики предсказывали будущее. И, ровным счетом, абсолютно ничего бы не поменялось. Может только АГ заметил бы подвох, но тоже не сразу, а только через несколько месяцев, а, может, и через год-другой. Но, легко сделать, чтобы и АГ остался в неведении.)

Однако, прежде чем играть на СБ, нам необходима стратегия и тестер. Ими мы и займемся.
Для начала стратегия: нам нужны три функции
— одна для пошагового слежения за рыночными котировками и определения момента входа в сделку — DealEntryAnalysis(i) и пусть на ее выходе будет: 0-если сделки нет, 1 — необходим вход в лонг, и -1 — необходим вход в шорт. i — номер отсчета массива котировок.
— вторая для сопровождения сделки лонг — DealControlL(i), отвечающая за контроль и закрытие сделки.
— и третья, для сопровождения сделки шорт — DealControlS(i).
Теперь у нас все готово для разработки тестера стратегий, а это всего лишь цикл while() последовательно перебирающий котировки.
Вот наша стратегия уже в тестере:

while i < Ie:
    deal_type = DealEntryAnalysis(i)
    if deal_type == 1:
        j, rep = DealControlL(i)
        deals_report.append(rep)
        i = j+1
        continue
    elif deal_type == -1:
        j, rep = DealControlS(i)
        deals_report.append(rep)
        i = j+1
        continue
    i = i+1


( Читать дальше )

КВИК-->Lua-->Python. Трансляция данных из КВИКа в Питон в реальном времени

Всех с пятницей — самоизолятницей!
Представляю общественности Python-сервер (в 9 строк кода) для получения данных из КВИКа в Питон через луа-скрипт в режиме реального времени.
Для примера приведу получение тиковых данных по SIM0.
Нам понадобятся следующие ингредиенты.
1. Понятное дело КВИК, версии ниже 8 или 8.5.2 и выше.
2. Питон Jupyter Notebook (Anaconda 3)
3. Луа-скрипт, взятый из Jatotrader (в нем буквально изменено пару строк)
Как работает сервер можно посмотреть в этом видео (1 мин. 38 сек.) Ну и по правилам хорошего тона, естественно сам текст ниже.


( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Автозапуск QUIK QLUA

Пожалуй, каждый, даже, самый ленивый программист на LUA презентовал свою версию для запуска QUIK.
Пришла и моя очередь.
Вчера, за небольшую благодарность, swerg перевёл w32.dll на LUA 5.3.
Теперь есть поддержка QUIK 8.5 и выше.
Скачать: http://pmntrade.ru/avtozapusk_quik_qlua/avtozapusk_quik_qlua.zip
Страница программы: http://pmntrade.ru/avtozapusk_quik_qlua.html
Видео:


( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

3-НДФЛ почему важно декларировать убытки (часть 2)

Писал ответы на комментарии к предыдущей статье https://smart-lab.ru/blog/593555.php и получилась полноценная статья)
Назовем ее «Часть 2»



Постарался сжато ответить всем: 

По законодательству НК РФ вы можете учесть образовавшийся убыток в течение 10 лет, следующих за годом его получения. Для того, чтобы его учесть, необходимо задекларировать этот убыток. 

Максимальный срок подачи Декларации составляет 3 года согласно сроку исковой давности.

 

Отсюда многие делают вывод: 

Если в этом году убыток, то лучше подам в следующем году сразу за 2. А если и в следующем будет убыток, то подам еще через год) Главное, не забыть зафиксировать в течение 3-х лет, чтобы полноценно воспользоваться 10-ти летним сроком.

 

Отвечу сразу — таким способом воспользоваться можно. Но вы должны понимать следующее:

  

Многие путают “доход” с “прибылью”, а те, кто не путают, выгодно или не понимая этого им пользуются.



( Читать дальше )

Как заработать на случайном блуждании. Часть 3

    • 21 декабря 2019, 00:11
    • |
    • Toddler
  • Еще
Пожалуй, настало время рассмотреть рыночный ВР более подробно.

Почему он гораздо сложнее пресловутой «монетки»? Как вообще такое может быть, что на обычном случайном блуждании мы спокойно зарабатываем, а на рынке ничего не получается? Откуда берутся гигантские импульсные движения цены?

Для попытки ответа на эти вопросы, в первую очередь мы рассмотрим распределение вероятностей приращений (первых разностей цены) CLOSE M1 для пары EURUSD за 2018 г.
Оно всем известно и загадочно. Выглядит оно вот так:
Как заработать на случайном блуждании. Часть 3

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

В первую очередь попробуем аппроксимировать его обычным (обычным ли?) треугольным распределением.
Совсем простым — как сумму двух равномерно распределенных величин. Как будто бросаем 2 монетки (ведь мы же помним, что Волшебник говорил, что на рынке мы видим суперпозицию именно двух процессов, не так ли?) и два полученных результата просто суммируем.

( Читать дальше )

Коммуникации Quik Lua с внешним миром.

    • 14 декабря 2019, 20:42
    • |
    • 3Qu
  • Еще

Мне нравится Lua. Lua хороший компактный язык на котором можно сделать индикаторы, различные вспомогательные программы, помогающие трейдеру и даже несложные торговые системы (ТС, роботы). Пожалуй единственная книга по Lua — Роберту Иерузалимски: Программирование на языке Lua. Ее можно найти в интернете.

Lua имеет также несложный C-API позволяющий связать программы Quik Lua с внешним миром через DLL и получить доступ практически ко всему, в том числе к любым математическим библиотекам обработки данных, что необходимо для сколь-нибудь сложным ТС. Однако, для этого уже необходимо знание не только Lua, но и Lua C-API, языка С/С++, а также умения писать DLL. При этом надо будет решить еще ряд проблем, которые возникнут по ходу пьесы в процессе этой деятельности. Далеко не каждый пользователь Quik и Lua может все это реализовать в обозримое время.
У Quik Lua (QLua) есть еще недостатки — все события терминала в Lua работают в потоке терминала, и получив из них данные надо как можно быстрей завершать функции обработки этих данных и освобождать поток терминала, иначе терминал просто повиснет. Единственная функция QLua работающая в собственном потоке — это main() и вся сколь-нибудь сложная обработка может находиться только в ней.
Кроме того, для Lua крайне мало библиотек, а существующие работают оч не быстро. В принципе, это и не нужно, если можно организовать связь с внешним миром через C-API. Но нам от этого легче не становится.) Короче, для написания хорошей сложной ТС нам надо выйти за пределы QLua и установить связь с внешним миром, и сделать это доступными средствами.
Сейчас наиболее продвинутым языком, включающим в себя массу библиотек обработки данных является Python. По применимости для обработки данных он, пожалуй, занимает первое место в мире, а по распространенности входит в первую пятерку. В числе библиотек — математические, статистические, машинного обучения и пр., и пр. Таких библиотек более тысячи только в Anaconda, большинство из которых устанавливается при ее инсталяции. Вы можете не использовать Anaconda и скачать Python с сайта



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Как заработать на случайном блуждании. Часть 2

    • 14 декабря 2019, 13:14
    • |
    • Toddler
  • Еще
Продолжение.
Начало здесь - https://smart-lab.ru/blog/579572.php

В прошлый раз мы рассмотрели метод, дарованный свыше, применительно к случайному блужданию.
Уважаемые трейдеры моментально побежали применять его к рынку и… тут же выразили свое недовольство, что он не работает. :)))
«Сомнения рождают страх, страх рождает ненависть...» — так в народе говорят, что ли?
Я тоже сомневаюсь — честно говоря, никогда не пробовал ранее его в деле. Ну, давайте посмотрим.
Минуя исследования гауссовских и лапласовских случайных процессов, побегу-ка я, сломя голову, исследовать реальный рыночный ВР.

Рассмотрим пару EURUSD с 01.01.2019 по 08.12.2019 на ценах закрытия CLOSE M1 
Выборка данных = 349716 значений, скользящее окно = 7200 (как и в эксперименте для «монетки»).

Конечно, рыночный ВР сложнее и говоря о применимости соотношения Sigma*sqrt(T) для вычисления стандартного отклонения процесса, прежде всего необходимо научиться правильно вычислять Sigma. Для «монетки» Sigma=1. А для рыночного ВР?

( Читать дальше )

Как заработать на случайном блуждании. Часть 1

    • 08 декабря 2019, 16:05
    • |
    • Toddler
  • Еще
Добрый день, господа!
Начиная серию публикаций о способе заработка на случайных процессах и, в частности, на классическом случайном блуждании (т.н. «монетке»), я преследую одну цель — дать возможность трейдерам переосмыслить свои взгляды на рынок.
Поехали!
Итак, первым экспериментом будет «монетка». Да-да, обычный random walk — суммирование приращений +1 и -1, вероятность выпадения которых на каждом шаге итерации = 50/50.
Выборка данных = 349716 значений (сделано это для исследования работоспособности предлагаемого метода заработка на паре EURUSD с 01.01.2019 по 08.12.2019 на ценах закрытия CLOSE M1, которое будет произведено позднее).
Выглядит случайное блуждание так:
Как заработать на случайном блуждании. Часть 1

Считается, что на таком процессе невозможно заработать. Так ли это?
Воспользуемся методом скользящей кумулятивной суммы приращений.
Выберем скользящее окно данных = 7200 значений, что соответствует недельному скользящему окну по EURUSD на ценах закрытия CLOSE M1.

( Читать дальше )

ПРОГНОЗ S&P500 и СОСТОЯНИЕ ЛИКВИДНОСТИ В США

Всем привет.
Мой телеграмм:  https://teleg.run/khtrader здесь Вы найдете более оперативную информацию 

Продолжаю следить за состоянием ликвидности в США, которая остается в шатком балансе, что не дает снизится доллару.
Начнем с первой картинки, это состояние баланса ФРС и избыточные резервы коммерческих банков
ПРОГНОЗ S&P500 и СОСТОЯНИЕ ЛИКВИДНОСТИ В США

Мы видим, что баланс ФРС растет и дальше, на неделе еще добавили 12 млрд долларов (синяя линия), в то время как избыточные резервы коммерческих банков не реагируют на расширении ликвидности ФРС. Налицо процесс поглощения ликвидности.

 

На следующей картинке отображены три основные направления поглощения ликвидности.
ПРОГНОЗ S&P500 и СОСТОЯНИЕ ЛИКВИДНОСТИ В США



( Читать дальше )

....все тэги
UPDONW
Новый дизайн