Yury Kirillov / Perfil
- Informações
10+ anos
experiência
|
0
produtos
|
0
versão demo
|
0
trabalhos
|
0
sinais
|
0
assinantes
|
A busca e o estudo do comportamento fractal de dados financeiros implica que, por trás do comportamento aparentemente caótico de séries temporais econômicas, estão ocultos e operam mecanismos estáveis que governam a conduta coletiva dos participantes. Na bolsa de valores, essa mecânica pode levar ao surgimento de uma dinâmica de preços que determina e descreve as propriedades específicas das séries de preços. Na negociação, seria interessante ter indicadores que pudessem estimar os parâmetros de fractalidade de maneira efetiva e estável, numa escala e num intervalo de tempo que fossem uteis na prática.
O campo para aplicar a diferenciação fracionária é bastante amplo. Por exemplo, os algoritmos de aprendizado de máquina geralmente recebem uma série diferenciada na entrada. O problema é que é necessário derivar novos dados de acordo com o histórico existente, para que o modelo de aprendizado de máquina possa reconhecê-los. Este artigo discute a abordagem inicial para a diferenciação das séries temporais, além disso, é fornecido um exemplo de estratégia de negociação otimizada automaticamente baseada nas séries diferenciadas obtidas.
Este artigo descreve um mecanismo de auto-otimização de um EA para o MetaTrader 5.
Об оценивании волатильностей и ковариаций
14 апреля 2019, 22:56
Eugene Logunov
Куда пойти работать кванту
12 апреля 2019, 20:38
Eugene Logunov
Если вы хорошо знаете математику, умеете программировать и вам интересна работа в качестве Quantitative Researcher / Quantitative Trader / Quantitative Portfolio Manager / etc. — то обратите внимание на этот список из 69 компаний.
Одни занимаются высокочастотной торговлей, маркетмейкингом и арбитражем. Другие — управляют активами с использованием количественных методов. Третьи — занимаются оптимальным исполнением ордеров. Самая малость — разрабатывают low-latency инстраструктуру и предоставляют её своим клиентам. Примерно у десяти, кажется, есть офисы в России. Остальные — в Нью-Йорке, Чикаго, Лондоне, Берлине и т.д.
Компании приведены в порядке максимально близком к алфавитному. Все сайты работают, один-два могут не открываться из России, но обязательно откроются через прокси.
3Red Trading ( www.3redpartners.com/ )
ADG Capital Management ( www.adgcapitalmanagement.com/ )
AIM Tech (бывший AIM Fund) ( www.aimtech.com/ )
Akuna Capital ( akunacapital.com/ )
Algo Capital (бывший Nord Capital) ( algocapital.ru/ )
Allston Trading ( www.allstontrading.com/ )
AQR Capital Management ( www.aqr.com/ )
Aspect Capital Ltd ( www.aspectcapital.com/ )
Belvedere Trading LLC ( www.belvederetrading.com/ )
BlackEdge Capital ( www.blackedge.com/ )
Bluefin Trading LLC ( www.bluefintrading.com/ )
Bluefire Capital ( www.bluefirecapital.com/ )
Chicago Trading Company / CTC ( www.chicagotrading.com/ )
Chopper Trading ( www.choppertrading.com/ )
Circulum Vite LLC ( www.circulumvite.com/ )
Citadel LLC ( www.citadel.com/ )
Consolidated Trading LLC ( www.consolidatedtrading.com/ )
Cutler Group LP ( www.cutlergrouplp.com/ )
D. E. Shaw Group ( www.deshaw.com/ )
DRW Trading Group (приобрели Vigilant Global) ( drw.com/ )
Eclipse Trading ( www.eclipsetrading.com/ )
exp(capital) ( expcapital.com/ )
Five Rings Capital ( fiverings.com/ )
Flow Traders ( www.flowtraders.com/ )
Geneva Trading ( www.geneva-trading.com/ )
GSA Capital Partners LLP ( www.gsacapital.com/ )
Headlands Technologies LLC ( www.headlandstech.com/ )
Hehmeyer Trading Group ( www.hehmeyer.com/ )
Hudson River Trading / HRT (приобрели Sun Trading LLC) ( www.hudson-trading.com/ )
IMC Trading B.V. ( www.imc.com/us/ )
Informed Portfolio Management / IPM ( www.ipm.se/ )
Jane Street ( www.janestreet.com/ )
Jump Trading ( www.jumptrading.com/ )
Liquid Capital Group ( www.liquidcapital.com/ )
Mosaic Finance Bienvenue ( www.mosaicfinance.fr/en/market-making )
Optiver ( www.optiver.com/eu/en/ )
PDT Partners ( www.pdtpartners.com/ )
PEAK6 Investments LLC ( www.peak6.com/ )
Profluent Trading ( www.profluenttrading.com/ )
QBF (ex- QB Finance) ( qbfin.ru/ )
Quantitative Brokers ( quantitativebrokers.com/ )
QuantPort Asset Management (подразделение Jefferies Investment Advisers) ( www.quantport-am.com/about-us/ )
QuantRes ( quantres.com/ )
Quantstellation ( quantstellation.com/ )
Quantum Brains ( quantumbrains.com/ )
Renaissance Technologies LLC ( www.rentec.com/ )
Research Affiliates ( www.researchaffiliates.com/ )
REVO Capital LLC ( http://www.revocm.com/ )
Ronin Capital ( www.ronin-capital.com/ )
Simplex Investments ( www.simplexinvestments.com/ )
Susquehanna International Group / SIG ( sig.com/ )
swissQuant Group AG ( www.swissquant.com/ )
Teza Technologies ( www.teza.com/ )
Thesys Technologies, LLC / Tradeworx ( www.thesystech.com/index.html )
ThunderBid ( www.thunder.bid/ )
Tibra Capital ( www.tibra.com/ )
Tower Research Capital / Spire Europe Limited / Latour Trading LLC ( www.tower-research.com/ )
Tradebot Systems ( www.tradebot.com/ )
TradeLink Holdings LLC ( www.tradelinkllc.com/ )
TransMarket Group LLC / TMG (бывший Aardvark Financial) ( www.transmarketgroup.com/ )
TRZ Funds ( www.trzfunds.com/ )
Two Sigma Investments ( www.twosigma.com/ )
Valkyrie Trading ( www.valkyrietrading.com/ )
Virtu Financial (приобрели KCG Holdings, бывшие Getco & Knight Capital Group) ( www.virtu.com/ )
Volant Trading ( volanttrading.com/ )
Winton Capital Management ( www.winton.com/ )
Wolverine Trading ( www.wolve.com/ )
WorldQuant / Millennium Management ( www.worldquant.com/home/ www.mlp.com/home/ )
Wunder Fund ( wunderfund.io/ )
P.S.
1) Если я пропустил какую-то интересную компанию — обязательно пришлите мне название!
2) Банков в списке нет. Почему? Я так захотел.
3) Нет, мне не платят за рекламу :)
Алгоритмическая торговля — интересная область, которая позволяет ИТ-специалистам применить свои технические знания на фондовом рынке и извлечь из этого ту или иную выгоду. В нашем блоге мы неоднократно рассматривали различные темы, связанные с созданием торговых роботов, но недостаточно внимания уделяли теоретическим вопросам, с которыми сталкиваются начинающие трейдеры.
В нашем сегодняшнем материале — подборка книг, которые помогут лучше подготовиться к началу работы на фондовом рынке и написанию механических торговых систем. Для достижения наибольшей эффективности материала, мы приводим советы экспертов, которые занимаются алгоритмической торговлей на российском и зарубежных фондовых рынках.
https://habr.com/ru/company/iticapital/blog/257971/
По-хорошему, если вы программист, хорошо владеете программированием и хотите написать робота, то берёте в команду опытного грамотного трейдера и по его чётким указаниям пишете робота, а не пытаетесь в попыхах изучить трейдинг и что-то там сварганить на основе полутора книжек и трёх статей из интернета.
05 апреля 2019, 11:25 FZF
В первой части мы рассмотрели «теорему о средней волатильности» где, обозначили такое свойство:волатильности могут на разных таймфреймах значительно отличаться друг от друга. Но они всегда будут со временем сходится к одному значению.
Вот, на этом свойстве и будет построен индикатор. Для индикатора нам нужны волатильности на различных таймфреймах. В качестве индикатора волатильности берутся два стандартных индикатора, но которые по сущности показывают одно и тоже.
Price Channel (PC) или ценовой канал. Индикатор представляет из себя две линии, которые ограничивают канал колебаний цены. Верхняя граница канала обозначает уровень локального максимума за прошедшие N периодов, а нижняя граница – уровень локального минимума за тот же промежуток времени. Таким образом, цена ограничивается максимальными точками колебаний – экстремумами за N периодов.
Индикатор ожидаемого движения для опционной торговли (Часть 2 устройство индикатора)
Средний Истинный Диапазон (Average True Range, ATR) . Если кратко, то это усредненное значение длин свечей за определенный период. По сути, это Price Channel одной свечи, усредненный за N периодов. (В моем случае он считается через простое усреднение).
Задача индикатора ожидаемого движения заключается в том, чтобы измерить волатильность на разных «таймфреймах», сравнить их и выявить значительные расхождения между ними. Для этого используются следующие составляющие:
Price Channel N периодов (РК1), как показатель волатильности за N периодов ;
Price Channel 2*N периодов (РК2), как показатель волатильности за 2*N периодов ;
Price Channel 4*N периодов (РК4), как показатель волатильности за 4*N периодов ;
ATR N периодов, как базовое значение с условным N0=1.
Получив эти значения, вычисляем отношения ATR к РК масштабе ATR:
L1=ATR/PK1*КОРЕНЬ(N); L2=ATR/PK2*КОРЕНЬ(2*N); L3=ATR/PK4*КОРЕНЬ(4*N);
L1 – это расхождение в волатильности с базовой величиной самого короткого периода. На графике эта величина будет присутствовать в виде зеленой линии. Ее значение выше единицы показывает, что последние N периодов рынок стоял в слишком узком диапазоне цен.
Далее вычисляется среднее (L1+L2+L3)/3. Эта величина отражает усредненное отклонение волатильности с базовой величиной самого короткого периода. На графике эта величина будет присутствовать в виде синей линии. Ее значение выше единицы показывает, что последние 4*N периодов рынок стоял в слишком узком диапазоне цен. Этот показатель говорит, что возможно, рынку пора делать движение и выравнивать значения волатильностей. Для фильтрации шумов есть пороговое значение F (filter): сигнал принимается во внимание когда (L1+L2+L3)/3 > F
И основная сигнальная линия ( на графике отображается красным) вычисляется как L1*(L1+L2+L3)/3 при условии что (L1+L2+L3)/3 > F. Если условие не выполняется, значение равно(1).
Значение сигнальной линии выше единицы показывает, что назревает движение для выравнивания значений волатильности.
На каком таймфрейме и с каким периодом использовать этот индикатор, зависит от того, какой величины движение вы хотите поймать. Показания индикатора можно (нужно) использовать, когда вы собираетесь продавать опционы. Поскольку он предупреждает о возможном движении.
Индикатор ожидаемого движения для опционной торговли (Часть 2 устройство индикатора)
Далее идет код индикатора. Его нужно скопировать в текстовый файл, присвоить ему расширение .lua и положить его в каталог Квика в папку LuaIndicators
По умолчанию (period ) N=14; (filter) F=1,2 ; индикатор должен появиться в списке индикаторов под именем "FZF_dVOL2". Свои индикаторы я начинаю с FZF чтобы потом их легче было искать в общем списке и они стоят в одной кучке.
Settings=
{
Name = "FZF_dVOL2",
period = 14,
filter = 1.2,
line =
{
{
Name = "FZF_L1",
Color = RGB(0, 255, 0),
Type = TYPE_LINE,
Width = 1
},
{
Name = "FZF_L2",
Color = RGB(0, 255, 255),
Type = TYPE_LINE,
Width = 1
},
{
Name = "FZF_L3",
Color = RGB(255, 0, 0),
Type = TYPE_LINE,
Width = 2
}
}
}
function Init()
return 3
end
function OnCalculate(index)
if index < (Settings.period*4+1) then
return nil
else
local sum = 0
local ATR=0
for i = index-Settings.period+1, index do
sum = sum + math.max(math.abs(C(i-1) - L(i)),math.abs(H(i) - C(i-1)),(H(i) - L(i)))
end
ATR=sum/Settings.period --посчитали АТР
-- прайс канал с периодом 1
MAX1 = H(index)
MIN1 = L(index)
for i = 0, (Settings.period-1) do
if MAX1 L(index-i) then MIN1 = L(index-i) end
end
-- прайс канал с периодом *2
MAX2 = H(index)
MIN2 = L(index)
for i = 0, (Settings.period*2-1) do
if MAX2 L(index-i) then MIN2 = L(index-i) end
end
-- прайс канал с периодом *4
MAX4 = H(index)
MIN4 = L(index)
for i = 0, (Settings.period*4-1) do
if MAX4 L(index-i) then MIN4 = L(index-i) end
end
local L1= 0
local L2= 0
local L3= 0
L1=ATR/(MAX1 - MIN1)*math.sqrt(Settings.period)
L2=ATR/(MAX2 - MIN2)*math.sqrt(Settings.period*2)
L3=ATR/(MAX4 - MIN4)*math.sqrt(Settings.period*4)
local LL1= 0
local LL2= 0
local LL3= 0
LL1 = L1 --короткий канал
LL2 = (L1+L2+L3)/3 -- Среднее
if(LL2 < Settings.filter) then
LL3=1
else
LL3 = L1*(L1+L2+L3)/3
end
return LL1, LL2 , LL3
end
end
04 апреля 2019, 16:12
https://smart-lab.ru/blog/531816.php
Хочу представить вам индикатор для Квика, который дает сигнал о возможном боковом движении базового актива. Индикатор построен на анализе структуры волатильности базового актива.
Для того, чтобы понять как, где и с какими параметрами применять этот индикатор, нужно понять на чем он основан и в каких ситуациях может иметь прогнозную ценность. Поэтому начнем с теории.
Кто пытался самостоятельно посчитать волатильность базового актива в годовом выражении, то знает, что надо взять данные по какому-нибудь таймфрейму за статистически значимый период и посчитать по нему волатильность. Потом, чтобы привести значение волатильности к годовому значению, нужно полученное значение умножить на корень из годового количества свечей таймфрейма взятого для расчета. В этом расчете могут применяться всякие коэффициенты, чтобы учесть выходные и праздники, либо брать для расчета только количество рабочих дней, но суть не в этом.
Если мы хотим посчитать волатильность на длительном периоде исходя из данных более мелких периодов, то волатильность посчитанная на мелких периодах нужно умножить на корень из числа мелких периодов входящих в большой период.
Индикатор ожидаемого движения для опционной торговли (Часть 1 теория)
То есть, мы можем рассчитывать разные волатильности разных периодов друг из друга.
Сформулируем некое следствие из вышеуказанной формулы.
Теорема о средней волатильности
Волатильности, посчитанные с использованием различных таймфреймов (различного разбиения на временные промежутки), стремятся к одному и тому же значению.
Как бы доказательство:
Если волатильность крупного таймфрейма больше волатильности мелкого таймфрейма, то существует такой устойчивый прибыльный алгоритм торговли где, позиция на пробой торгового канала в большинстве случаев приносит прибыль.
Если волатильность крупного таймфрейма меньше волатильности мелкого таймфрейма, то существует такой устойчивый прибыльный алгоритм торговли где, позиция во внутрь торгового канала в большинстве случаев приносит прибыль.
Поскольку мы не наблюдаем толпы зарабатывающих трейдеров ни на одной из этих стратегий торговли, это означает, что волатильности на разных таймфреймах за длительный период времени равны между собой.
Ключевая фраза : за длительный период времени. Это означает, что в каждой отдельной ситуации волатильности могут на разных таймфреймах значительно отличаться друг от друга. Но они всегда будут со временем сходится к одному и тому значению. То есть разница волатильностей, есть график колеблющийся вокруг средней линии.
На этом свойстве и основан индикатор ожидаемого движения. Его подробное описание и код будут в следующей части. А пока, пусть те, кто только начинает работу с опционами, переварят полученную информацию.
https://www.youtube.com/watch?v=sYbN-PdXD5I
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) случайность никуда не денется, может просто повезти/не повезти даже при оптимальных действиях.
В любом случае, лучше понимать, что происходит пусть в модельном примере и делать выводы уже применительно к трейдингу, чем вообще ничего не понимать.
Удачи в торговле!
https://smart-lab.ru/blog/507792.php
Na prática, os traders muitas vezes procuram por pontos de reversão, uma vez que é no momento em que surge a tendência que o preço tem o maior potencial de movimento. É por isso que, na prática da análise técnica, são considerados vários padrões de reversão. Um dos padrões mais famosos e usados é o de 'topo/fundo duplo'. Este artigo apresenta uma opção para detectar padrão algoritmicamente, além disso, nele é testada sua rentabilidade em dados históricos.
Neste artigo, estudaremos um algoritmo para criar um testador de modelos de candles, em linguagem OpenCL, no modo "OHLC em M1". Além disso, compararemos sua velocidade com a do testador de estratégia embutido, no modo de otimização rápida e lenta.
Este artigo descreve uma biblioteca que permite aumentar a eficiência ao trabalhar com solicitações HTTP em linguagem MQL5. O WebRequest é iniciado no modo sem bloqueio em threads adicionais usando gráficos e EAs assistentes, compartilhando eventos personalizados e lendo recursos compartilhados. Códigos fonte estão anexados ao artigo.
Hail-fellow signals (Librenetka expert):
https://www.mql5.com/ru/signals/450729
https://www.mql5.com/ru/signals/472221
uickly and safely