Постов с тегом "случайное блуждание": 50

случайное блуждание


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


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

Мысли о случайном поведении цены

    • 18 июня 2020, 17:19
    • |
    • Thoth
  • Еще

Сегодня хочу порассуждать о том, случайно ли поведение цены и можно ли его предсказать?

Для начала скажу, что это сугубо мое мнение, которое возможно натолкнет вас на интересные мысли. Я не какой-то гуру, просто делюсь мыслями и хочу получить в ответ здравую реакцию согласия/не согласия со мной и полезные для всех нас комментарии :)

И так: недавно я начал познавать алготрейдинг, присоединился к разным чатам, пообщался с людьми, почитал умные книги и заметил одну закономерность. Достаточное количество алготрейдеров относятся к цене как к случайному процессу и строят роботов отталкиваясь от этого. В пример часто приводятся графики цены и случайно сгенерированные графики, а главный аргумент состоит в том, что они похожи (график похож на график действительно). Меня немного поразил и натолкнул на написание этого поста момент, когда один алготрейдер мне начал яро доказывать, что цена случайна.

Моя позиция по этому вопросу такая: случайных процессов не бывает. Все имеет причину и следствие. Процессы, которые кажутся случайными на деле имеют либо много элементов, которые оказывают на них влияние, что осложняет прогнозирование, либо мы просто не понимаем всех элементов и из-за этого думаем, что процесс случаен.



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

Новый Левиафан. Два главнейших принципа функционирования спекулятивных рынков.

    • 18 июня 2020, 11:18
    • |
    • spebe
  • Еще

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

    Томас Гоббс, английский философ, политолог, написал в середине 17 в. работу под названием «Левиафан или Материя, форма и власть государства церковного и гражданского». В этом труде осмыслены причины возникновения и функции государства, как орудия урегулирования отношений между людьми с изначально антагонистическими по своей природе интересами в условиях их объединения.
Идею природной враждебности людей друг к другу описал в своей комедии «Ослы» римский комедиограф Тит Макций Плавт. Оттуда пошло известное выражение:



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

О математике в трейдинге

Прочитал у известного персонажа вот такое заблуждение 

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

Написана полная ерунда. Позволю себе процитировать фразу, с которой я начинал свой курс «Алгоритмическая торговля. Научный подход» :
Математика в общем случае не даст Вам ответа на вопрос КАК ДЕЛАТЬ? Но она даст Вам ответ на другой важный вопрос ЧТО ДЕЛАТЬ, А ЧТО НЕ ДЕЛАТЬ?

Что из этого следует? А то, что математика не может быть «эффективна» в поиске паттернов, она лишь может точно сказать: найденные Вами паттерны — это реальные закономерности или чушь собачья.

Как правильно заметил мальчик BuyBuy в своём топике: самый простой способ это сделать, это проверить свои паттерны на качественно (!) смоделированом случайном блуждании и если окажется, что и там все лучше самой доходной пассивной стратегии, то значит это чушь собачья.

Как сделать качественное случайное блуждание для последовательности свечей реального актива?

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

Моделирование Торговых Систем на Python. 2.

    • 12 мая 2020, 10:29
    • |
    • 3Qu
  • Еще

Тем, кто не читал предыдущий топик этой темы, рекомендую для начала ознакомиться с ним [1].

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

Ну, а сейчас мы займемся разработкой и тестированием индикаторов. Для начала нам нужна простейшая стратегия с использованием МА — его и построим. Самой лучшей по характеристикам МА является ЕМА. Формула ЕМА:



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

Моделирование Торговых Систем на Python. 1.

    • 09 мая 2020, 19:31
    • |
    • 3Qu
  • Еще

Для моделирование ТС на Python, прежде всего нужен сам Python. Pythonы бывают очень разные.

Самый большой и длинный Python — Anaconda (https://anaconda.org/). Скачать дистрибутив Anaconda можно здесь — Индивидуальное издание -https://www.anaconda.com/products/individual.
Я работаю именно с Anaconda. Установив Anaconda мы получаем сам Python, уже установленные значительную часть нужных и ненужных пакетов с библиотеками Python, и несколько сред разработки. И все это сразу готово к работе, и нам, по большей части, уже не придется дополнительно устанавливать пакеты и среды.

Самый маленький Python последней версии 3.8.2. скачивается с сайта самого Python — https://www.python.org/. Это, практически, только сам язык, компилятор и минимальный набор пакетов. Сделать с ним практически ничего невозможно, и для работы придется постоянно устанавливать нужные пакеты. Среду разработки придется также устанавливать самостоятельно.
Этот Python больше подходит для запуска и работы с уже отлаженными законченными программами.



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

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

    • 12 апреля 2020, 14:42
    • |
    • Toddler
  • Еще
Грааль...  Где ж ты находишься?
Иногда мне кажется, что Он рядом, только руку протяни, ан — нет, не все так просто. Но, жажда напиться из Него — безмерна. Продолжим наш путь.
Как заработать на случайном блуждании. Часть 5
Сегодня постараемся смоделировать распределение приращений цены. Ведь мы же помним, что оно выглядит вот так:
Как заработать на случайном блуждании. Часть 5

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

Модель рынка как немарковского процесса. Часть 2.

    • 08 апреля 2020, 21:09
    • |
    • Toddler
  • Еще
Продолжаем наш нелегкий путь к познанию рынка.

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

А как же марковская модель? Применима ли она к рынку? Не в том ли проблема, что мы уверены, что будущие значения цены зависят только от текущего значения цены и ее скорости, а все предыдущие значения отказываемся принимать в расчет — ведь в этом смысл модели Маркова, не так ли?

Для ответа на этот вопрос, нам потребуется рассмотрение уравнение Фоккера-Планка (или прямого уравнения Колмогорова). Оно выводится для системы хаотически движущихся (броуновских) частиц, т.е. диффузионного облака молекул.
В общем случае, оно выглядит так:

 d{\mathbf {X}}_{t}={\boldsymbol {\mu }}({\mathbf {X}}_{t},\;t)\,dt+{\boldsymbol {\sigma }}({\mathbf {X}}_{t},\;t)\,d{\mathbf {B}}_{t}, 

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

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

Доброго времени суток, господа!

М-да… Вся лента забита новостями: коронавирус, нефть-матушка, кризис...

А где же будоражащие душу исследования, напрямую ведущие к Граалю? Нетути… Нетути Грааля аль, все ж таки, есть?

Продолжим путешествие в мир случайности/закономерности рыночных временных рядов с целью узреть Свет и Счастие для всех страждущих.
В предыдущих частях проекта:
https://smart-lab.ru/blog/579572.php
https://smart-lab.ru/blog/580961.php
https://smart-lab.ru/blog/582407.php
мы убедились, что заработать на теоретических случайных процессах («монетка», Laplace motion, ...) довольно просто. Пользуемся тем фактом, что сумма независимых или слабозависимых случайных величин (приращений) дает число, принадлежащее нормальному распределению Гаусса и при выходе текущей кумулятивной суммы за пределы диапазона +-Delta*1.96, где Delta = sqrt(2*(b^2)*t), заключаем сделки, а при возврате в 0 — закрываем их. Дело сделано...



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

Новогодний тренд и случайное блуждание.

    • 31 декабря 2019, 07:45
    • |
    • bozon
  • Еще
Всех с наступающим! Новых трендов вам в кривую «эквити»!
Буду краток:
— из формулы Блэка-Шоулза цены опциона call на базисный актив мы знаем, что в случайном блуждании (СБ) есть математическое ожидание;
— МО=± 0,5*дисперсия* время (всё на логарифмической линейке);
— для перевода МО на привычный нам график базисного актива нужно МО умножить на цену базисного актива (по аналогии с волатильностью);
— получается, что в СБ есть непостоянное матожидание, равное ± половине произведения абсолютного приращения цены (S*sigma) на относительное (sigma) в единицу времени;
— теперь, если наша стандартная скользящая средняя не выходит из этого диапозона, процесс с уверенность можно считать СБ или даже стохастическим (с возвратом к среднему);
Ещё раз с праздником! Успехов! Благодарю за внимание.

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