Yury Kirillov
Yury Kirillov
  • Информация
10+ лет
опыт работы
0
продуктов
0
демо-версий
0
работ
0
сигналов
0
подписчиков
Добытчик интернет денег
Yury Kirillov
Yury Kirillov
Про математически оптимальное плечо.
13 декабря 2018, 10:07 _sk_
https://smart-lab.ru/blog/510509.php

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

Допустим, мы придумали торговую систему, которая даёт следующие прибыли/убытки с равными шансами: -10%, +20%, -5% и +5%. Если сделать 4 трейда по этой системе, вкладывая весь имеющийся в наличии капитал, и каждый из исходов произойдёт ровно по одному разу, то капитал C превратится в
C*(1-0.1)*(1+0.2)*(1-0.05)*(1+0.05) = C*1.0773,
т.е. вырастет на 7.73%.

Пусть у нас есть возможность получить бесплатное плечо и вкладывать удвоенный капитал, тогда по сравнению с исходным капиталом прибыли/убытки составят уже -20%, +40%, -10% и +10%. В этом случае исходный капитал после 4-х трейдов превратится в
C*(1-0.2)*(1+0.4)*(1-0.1)*(1+0.1) = C*1.1088,
т.е. вырастет на 10.88%, что выгоднее торговли по номиналу.

Если ещё увеличить плечо, скажем, вкладывая упятерённый капитал, то прибыли/убытки на исходный капитал будут -50%, +100%, -25% и +25%, а капитал после 4-х трейдов превратится в
C*(1-0.5)*(1+1)*(1-0.25)*(1+0.25) = C*0.9375,
т.е. капитал не вырос, а уменьшился на 6.25%. Что называется, перебрали с плечом.

Получается, что есть оптимальный коэффициент плеча k, для которого торговля будет самой выгодной. Это k можно подобрать, чтобы произведение
(1-k*0.1)*(1+k*0.2)*(1-k*0.05)*(1+k*0.05)
стало самым большим.

Оставим пока подбор k, и задумаемся, почему рассмотрены только 4 трейда, когда на практике их много. Дело в том, что если совершается большое число N трейдов, то примерно N/4 из них дадут -10%, примерно N/4 дадут +20% и т.д. Пренебрежём этим «примерно» (всё равно из-за случайности по всякому может быть), и будем считать, что точно по N/4 трейдов будет у каждого исхода. Тогда надо максимизировать
(1-k*0.1)^(N/4) * (1+k*0.2)^(N/4) * (1-k*0.05)^(N/4) * (1+k*0.05)^(N/4),
где знак ^ означает возведение в степень.

Мы можем убрать N из степени (поскольку большее положительное число при возведении в некоторую степень даёт больший результат, чем меньшее положительно число при возведении в ту же степень) и максимизировать выражение
(1-k*0.1)^(1/4) * (1+k*0.2)^(1/4) * (1-k*0.05)^(1/4) * (1+k*0.05)^(1/4).
Здесь показатели степеней 1/4 — не что иное, как вероятности каждого из исходов.

Теперь становится понятно, как обобщить исходный пример. Пусть есть трейды, которые случаются с вероятностями p1, ..., pn и дают прибыли/убытки x1, ..., xn. Для подбора оптимального плеча нужно найти такое k, что произведение
(1+k*x1)^p1 *… * (1+k*xn)^pn
будет максимально. Поскольку x и p — это некоторые известные числа, то произведение зависит только от k, т.е. является некоторой функцией f(k).

Я пропущу математические выкладки, поскольку:
1) кто знает, тот сообразит;
2) кто не знает, тот смотрит на итоговую приближённую формулу ниже;
3) кто хочет намёков, тот:
а) находит логарифм от произведения (его максимум достигается при том же k, что и у исходного произведения, а вычислять дальше будет проще),
б) вычисляет его производную и приравнивает к нулю (в точке максимума она нулевая);
в) решать полученное уравнение неудобно, поэтому заменить выражения вида 1/(1+k*x) по формуле геометрической прогрессии на 1-k*x+(k*x)^2 — … и пренебречь всеми членами, начиная с квадратов, после чего придти к уравнению на k, которое уже легко решить.

Итоговая приближённая формула имеет вид:
k = (p1*x1+...+pn*xn) / (p1*x1^2+...+pn*xn^2).

Замечания по поводу формулы понятны:
1) она приближённая, но можно подбирать точное значение k для максимума численно;
2) плечо не бесплатно, но это можно учесть отдельно;
3) в реальном трейдинге вероятности и прибыли/убытки либо неизвестны, либо могут меняться со временем;
4) случайность никуда не денется, может просто повезти/не повезти даже при оптимальных действиях.

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

Удачи в торговле!
Yury Kirillov
Yury Kirillov
Как вывести деньги с ИИС 29 ноября 2018, 12:14 invest-schet.ru
https://smart-lab.ru/blog/507792.php
поделился статьей автора Dmitriy Gizlyk
Разворотные паттерны: Тестируем паттерн "Двойная вершина/дно"
Разворотные паттерны: Тестируем паттерн "Двойная вершина/дно"

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

поделился статьей автора Serhii Shevchuk
Применение OpenCL для тестирования свечных моделей
Применение OpenCL для тестирования свечных моделей

В данной статье мы рассмотрим алгоритм реализации тестера свечных моделей на языке OpenCL в режиме "OHLC на M1". А также сравним его быстродействие cо встроенным тестером стратегий, запущенным в режиме быстрой и медленной оптимизации.

поделился статьей автора Stanislav Korotky
Многопоточный асинхронный WebRequest на MQL5 своими руками
Многопоточный асинхронный WebRequest на MQL5 своими руками

В статье рассмотрена библиотека, позволяющая повысить эффективность работы с HTTP-запросами в MQL5. Выполнение WebRequest в неблокирующем режиме реализовано в дополнительных потоках с использованием вспомогательных графиков и экспертов, обмена пользовательскими событиями и чтения разделяемых ресурсов. Исходные коды прилагаются.

Yury Kirillov
Yury Kirillov
Дружественные сигналы (советник LibreNetka):
Hail-fellow signals (Librenetka expert):
https://www.mql5.com/ru/signals/450729
https://www.mql5.com/ru/signals/472221
Nigel Davis
Nigel Davis 2018.11.21
Hello Yury. You might want to consider following me in order for us to grow your account
uickly and safely
Yury Kirillov
Yury Kirillov
О «теореме Ферма» теории вероятностей или о нормальности «бытия» (много буков)
16 октября 2018, 16:41 А. Г.
https://smart-lab.ru/blog/499678.php
Yury Kirillov
Yury Kirillov
Комментарий к теме Информационный индикатор позиций, сделок и ордеров.
По данной теме создан общедоступный проект LIP. Текущая версия индикатора v1.006. Проводится локализация на английский. Вид экрана: Окно настроек: Конструктивная критика приветствуется
Информационный индикатор позиций, сделок и ордеров.
поделился статьей автора Roman Klymenko
Реверсирование - священный Грааль или опасное заблуждение?
Реверсирование - священный Грааль или опасное заблуждение?

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

Yury Kirillov
Yury Kirillov
Статья про Срочный Рынок. Прочтите пожалуйста!
13 августа 2018, 17:23 Инвестор Алёshа
https://smart-lab.ru/blog/487540.php
Yury Kirillov
Yury Kirillov
Статья про налоги. Прочтите пожалуйста.
08 августа 2018, 16:26 Инвестор Алёshа
https://smart-lab.ru/blog/486495.php
kileo
[Удален] 2018.08.16
Вот нафига козе баян, там про форекс ни слова не сказано. Статья ноль информации.
Yury Kirillov
Yury Kirillov 2018.08.16
Форекс не единственное применение для MQL и не единственное место для торговли.
Yury Kirillov
Yury Kirillov
Мануал по торговле с плечами. Важная информация!
01 августа 2018, 16:35 Инвестор Алёshа
https://smart-lab.ru/blog/485202.php
Yury Kirillov
Yury Kirillov
Социология алгоритмов: Как связаны финансовые рынки и высокочастотная торговля
https://habr.com/company/iticapital/blog/274247/
https://habr.com/company/iticapital/blog/274671/
Yury Kirillov
Добавил опрос Пример опроса с кучей вопросов для Rustem Bigeev
  • 31% (11)
  • 46% (16)
  • 49% (17)
  • 34% (12)
  • 37% (13)
  • 54% (19)
Всего проголосовало: 35
Yury Kirillov
Добавил тему Как автоматически определить тип счета в MT5?
Например для брокера Roboforex имеем несколько типов счетов: ECN, Pro, Cent и т.д. Но обращение идёт к одному и тому же серверу: "RoboForex-MetaTrader 5" Поэтому вопрос: Как программно определить к какому типу относится счёт
Yury Kirillov
Yury Kirillov
RoboForex - гигантские задержки исполнения ордеров на центовом счете. Открытие - более 30 секунд. Закрытие - более 15 секунд. Позорная жадность брокера.
Yury Kirillov
Yury Kirillov 2018.07.10
15 мс
Viktor Vasilyuk
Viktor Vasilyuk 2018.07.10
А вы, батенька, эксперт находить лоховодов.
Yury Kirillov
Yury Kirillov 2018.07.11
Хотя тестирование показывает, что алгоритм устойчив к задержкам 120000 мс (дальше не проверял).
Yury Kirillov
Добавил тему Как определить на каком компьютере запущен советник. Без DLL.
Как сделать так, чтобы советник работал только на одной конкретной железке ( сторонний VPS ). Как из MQL можно определить железку на которой работает советник. DLL не предлагать, там всё ясно
Yury Kirillov
Yury Kirillov
EURUSD, M1, 2018.06.22 04:27 UTC, Alpari International Limited, MetaTrader 5, Real
https://charts.mql5.com/18/565/eurusd-m1-alpari-international-limited-librenetka-v4-210-alpari.png