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

по

Откуда берется улыбка волатильности.

    • 10 ноября 2019, 14:53
    • |
    • noHurry
  • Еще

 

Вот эта картинка очень просто обьясняет, почему рынок имеет или должен иметь улыбку.

Откуда берется улыбка волатильности.
Это простой вертикальный Bull call spread на SPX, с нулевой теттой. Обратите внимание на соотношение max P/max L. Я думаю любой более менее понимающий этот рынок скажет, что так и должно быть, иначе деньги можно было бы лопатой грести. А теперь вопрос — а возможно ли было бы такое без улыбки? Мой ответ нет. Чем отличается рынок SPX от других рынков, где нет улыбки, тем, что он трендовый. 

Вывод — причина возникновения улыбки волатильности это трендовость рынка. 

Рынок саморегулирующийся механизм, который стремится к нулевому матожиданию. И если у рынка появляется трендовость (смещение вероятности), то рынок компенсирует это смещением волатильности и возвращает матожидание к нулю. 

 


Как влияет маркап на прибыль

    • 09 ноября 2019, 18:05
    • |
    • fxsaber
  • Еще
В теории при отрицательном маркапе (цены улучшаются)  на одних и тех же настройках ТС ее мат. ожидание должно увеличиться на двойной маркап, если торговые сигналы повторять.

Например, был профит 20000 пипсов при 1000 трейдов. Сделали маркап -1 пипс (Bid -= -1pips, Ask += -1pips). Тогда MarkupProfit = 20000 — 1000 * (-1 ) * 2 = 22000 пипсов.



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

Индикатор срыва "стопов" толпы реализован

Закон Хеопса гласит: «Ничто и никогда не делается в срок и в пределах сметы». На этот раз не тот случай, как обещал в прошлом топике https://smart-lab.ru/blog/571855.php успел на неделе… Можно пользоваться индикатором в версии Jatotrader 2.9.2.
Индикатор срыва "стопов" толпы реализован
Видео индикатора здесь.

Лучше скачать обновление (не заплатку), т.к. стандартные настройки для Si и BR сохранены в конфигурации.

Если вы используете Jatotrader для визуализации и анализа сделок участников ЛЧИ и при загрузке сделок по акциям (например, по AFKS) возникает ошибка, исправьте в файле symbols.dat в объекте AFKS поле :minimum-price-step c 0.005 на 0.001, (короче, на актуальное значение шага цены) и перезапустите программу.

Если вы устанавливаете впервые Jatotrader, то
1. Cкачайте сначала установщик и запустите его.
2. Затем скачайте обновление, распакуйте его поверх старых файлов в папку Jatotrader (с заменой).
3. Иногда нужно ставить «заплатку», если она отличается от обновления по дате (в ней, как правило, устраняются ошибки).



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

Поверхности волатильности... что в них кроме Корово-Анохинцев?

    • 08 ноября 2019, 19:55
    • |
    • bstone
  • Еще
Я уже не однократно признавался, что торговля поверхности волатильности — это сильно заумно для меня. И более того, все время от меня ускользает ответ на такой простой вопрос: «Почему?.. Почему те, кто торгует эти поверхности (торговля улыбки — суть то же самое) думает, что рынок состоит сплошь из нобелевских лауреатов и от того умнее нас с вами?»

Что такое калибровка поверхности как не признание рыночного «ума»? Рынок настолько умен, что все рыночные цены априори правильные? Иначе зачем г-н Курбаковский старается так точно описать рыночные цены? Зачем другие коллеги калибруют улыбки и поверхности к рынку? Неужели калибруя к нему, мы любые отклонения запишем себе в профит? Да ну на...

Пусть мне не хватает этого самого ума, но мне гораздо приятнее считать, что рынок лишь на половину состоит из нобелевских лауреатов, а остальная половина — это наши любимые Корово-Анохинцы. Если последние читают этот пост, то хочу отдельно обратиться к ним: Мужики! Слушайте и дальше консультации мэтра Коровина. Я очень рад, что он снова нашел в себе силы, чтобы опуститься к вам с высоты своего опционного полета и поучить вас. Последняя его лекция, судя по всему, особенно хорошо зашла, т.к. в конце видео все хлопали и говорили ему спасибо. И действительно, спасибо вам, дорогие мои! :)

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

Еще раз про любовь (СКО)

Я разобью свою писанину на части. Что бы можно было делать ссылки на понятия, которые мы будем использовать. Да и короткие посты читать удобнее.

СКО или волатильность. Об этом столько писали, столько считали. Однако, до сих пор меня умиляет, что или кого называют волатильностью. Казалось бы не стоить об этом повторятся, но приходится. Итак Средне Квадратичное Отклонение. Берем закрытия дня и логарифмируем. LN(сегодня/вчера), называем приращением цены. Итак 100 дней. Находим среднее. Потом возводим в квадрат каждое значение LN(сегодня/вчера)^2. Это называется дисперсией. Из каждого значение отнимаем среднее ^2 (впрочем, там значения маленькие и на скорость пули не влияют). Иногда среднее не отнимают. Теперь находят сумму всех этих значений и делят на их количество (100) минус 1. После чего извлекают квадратный корень. Называем это сигмой

Получаем число. И это важно. Это число не АТR, не среднее, не коридор, не Болинжер Бенс. К графику цены оно не имеет ни какого отношения. Не надо откладывать сигмы от цены или умножать цену на сигму. Это СКО. Это переменная необходима, что бы подставить ее в формулу.



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

Работа в трейдинге #3. Программистом.

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

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

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

1) Начну с того, что тебе придется работать на Линуксе. Этим пунктом сразу отрезается масса языков, которые просто не вяжутся с этим ОС. Не, ты конечно можешь сказать, что поставишь mono или net.core или еще другие Приблуды. Но нет.

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

Отбектестил свою торговую систему

Всем привет!

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

Отбектестил свою торговую систему

В любом случае алгоритм рабочий, успешно работает уже 3 года на моих счетах. А реальному счету под управлением этой ТС (на бектесте которая) уже скоро год как:
Myfxbook
SignalStart
MQL5
Да собственно говоря, у меня в работе под этим алгоритмом не один счет в портфеле, их несколько, и на каждом адаптация под условия брокера, под торгуемый актив, под риски. В общем, модификаций много:
Отбектестил свою торговую систему

Портфолио

Многим мои результаты не нравятся, маленькая говорят доходность, не интересно ))) Ну я их и не переубеждаю… у каждого свои предпочтения и мнения на этот счет.

Индикатор с границами

пример использования:
два индикатора с разными периодами совместно дают более точный сигнал
Индикатор с границами


Settings={
Name="MNKMK",
period=200,
delta = 1,
line=                                     
                {  
					{  
                        Name = "cur1",
                        Type =TYPE_LINE,
                        Width = 2,
                        Color = RGB(255,0, 0)
                    },
					{  
                        Name = "cur2",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(0,0, 255)
                    },
					{  
                        Name = "cur3",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(0,0, 255)
                    }
                }

}
--[[

описание свойств:
period - период, за каротрый делается расчет
delta - множетель отступа по вертикали H - L

назначение:
распознавание точки разворота тенденции

использовался метод:
метод наименьших квадратов (аппроксимация линией)

--]]

function Init()
 	
  return 1
end

function OnCalculate(index)
    
  sz = Size()
  n = Settings.period
  d = Settings.delta  
  
  if index == 1 then 
    a1_0 = 0
	a2_0 = 0
	a3_0 = 0
	a4_0 = 0  
    a1_1 = 0
	a2_1 = 0
	a3_1 = 0
	a4_1 = 0 
	HiLo_0 = 0
	HiLo_1 = 0
	prevk = 0
  end  
       

   i = index
   a1_1 = a1_1+i*C(i)
   a2_1 = a2_1+i
   a3_1 = a3_1+C(i)
   a4_1 = a4_1+i*i  
   HiLo_1 = HiLo_1+H(i)-L(i)
   y = nil
   
   if index-n > 0 then
        
    i = index-n
	a1_0 = a1_0+i*C(i)
	a2_0 = a2_0+i
	a3_0 = a3_0+C(i)
	a4_0 = a4_0+i*i
	HiLo_0 = HiLo_0+H(i)-L(i)
	
	a1 = a1_1-a1_0
	a2 = a2_1-a2_0
	a3 = a3_1-a3_0
	a4 = a4_1-a4_0
	HiLo = (HiLo_1-HiLo_0)/n
	
	if((n*a4 - a2*a2) ~= 0) then
	  
	  a = (n*a1 - a2*a3)/(n*a4 - a2*a2)
	  b = (a3 - a*a2)/n
       
      y = a*index + b 
	  
	  y1 = y - HiLo*d
	  y2 = y + HiLo*d
	  
	  if O(index) < y1 then
	    y = y2
		prevk = 1
	  else
	   if O(index) > y2 then
	    y = y1
		prevk = 2
       else 
	    if prevk == 1 then
		  y = y2
		end 
	    if prevk == 2 then
		  y = y1
		end 		
	   end
	  end 
    end 
	
   end 
 
   return y
 
  
endЬЛ



Индикатор - кривая наименьших квадратов MNKM

Индикатор - кривая наименьших квадратов MNKM


Settings={
Name="MNKM",
period=200,
line=                                     
                {  
					{  
                        Name = "cur1",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(255,0, 0)
                    }
                }

}
--[[

описание свойств:
period - период, за каротрый делается расчет

назначение:
построение кривой, у которой сумма квадратов расстояний
от цен закрытия до нее минимальна
таким образом, кривая показвает общую тенденцию
движения цены

использовался метод:
метод наименьших квадратов (аппроксимация линией)

--]]

function Init()
 	
  return 1
end

function OnCalculate(index)
    
  sz = Size()
  n = Settings.period
  
  if index == 1 then 
    a1_0 = 0
	a2_0 = 0
	a3_0 = 0
	a4_0 = 0  
    a1_1 = 0
	a2_1 = 0
	a3_1 = 0
	a4_1 = 0 
  end  
       

   i = index
   a1_1 = a1_1+i*C(i)
   a2_1 = a2_1+i
   a3_1 = a3_1+C(i)
   a4_1 = a4_1+i*i  
   y = nil
   
   if index-n > 0 then
        
    i = index-n
	a1_0 = a1_0+i*C(i)
	a2_0 = a2_0+i
	a3_0 = a3_0+C(i)
	a4_0 = a4_0+i*i
	
	a1 = a1_1-a1_0
	a2 = a2_1-a2_0
	a3 = a3_1-a3_0
	a4 = a4_1-a4_0
	
	if((n*a4 - a2*a2) ~= 0) then
	  
	  a = (n*a1 - a2*a3)/(n*a4 - a2*a2)
	  b = (a3 - a*a2)/n
       
      y = a*index + b
	  
    end 
	
   end 
   
   return y
 
  
end

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