Избранное трейдера _xXx_
------///------
Часто приходится слышать, что от биржевых игроков – только вред. Некоторые уточняют «от спекулянтов». Многие идут дальше и говорят – вообще от всех. Даже от пассивных держателей акций «Газпрома» и «Амазона». С марксистской колокольни, например, все они паразитический класс.
Более умеренная позиция: «вреда от вас нет, но и особой пользы тоже». На что-то живете, но при этом ничего не производите, так ведь?
Попробуем защититься и от радикальных, и от умеренных. Итак, вопрос: зачем мы, от портфельных инвесторов до алготрейдеров, нужны хоть кому-то, помимо самих себя?
Кто кого эксплуатирует?
Можно начать с базового тезиса, что деятельность инвестора и трейдера формально этична. Этику можете понимать при этом как угодно. Можно по Канту: «поступай так, чтобы максима твоих поступков могла стать всеобщим законом». Можно как утилитаристы: поступай так, чтобы максимизировать пользу мира. Спекуляции, не говоря уже об инвестициях, пройдут оба теста.
В Москве и по всей стране отменяется режим самоизоляции, связанный с последствиями пандемии новой коронавирусной инфекции. Такого еще не было в истории. Полмира добровольно село на карантин. Но многие оказались к этому не готовы.
Какие уроки мы можем извлечь после коронокризиса 2020 года:
1️⃣ Беда может прийти откуда не ждали
Кто мог предположить, что похлебка из летучей мыши с уханьского рынка обернется страшной бедой для всего человечества. Мощная вспышка заболеваемости коронавирусом и невиданные доселе карантинные меры правительств многих стран подействовали на экономику как сорванный стоп-кран на поезд. Кого-то резко стопорнуло, а кого-то выбросило на обочину. Мы не можем предполагать какие еще беды могут на нас свалиться. Каждый кризис — это сбой от того, что старые правила не работают. Так что в начале каждого плана, который вы строите на работе или в личной жизни жирным напишите: готовься к «черному лебедю».
Зацените. Как вам кондор? Есть, конечно, художественные допущения. Но, в целом выглядит вполне прилично. Во всяком случае, я его так вижу.
Да, дошло и до кондоров. Стрэнглы о которых раньше говорилось для опционов с экспирацией 18.06.20 уже не катят. Сейчас вполне можно взять стрэнгл утром и продать его ближе к 19:00, но на ночь его оставлять уже не рекомендуется. Ближе к экспирации временной распад ускоряется и вся заработанная днем прибыль может испарится.
Рассмотрим стрэнгл в опционах на фьючерс RTS-6.20 c экспирацией 18.06.20, С-135000 — 620 п., Р-105000, 630 п. Общаая стоимость позиции 1250 п. Тета С -39 п, Тета P — 37 п. Итого, для стрэнгла за ночь сожрется 76 п — это 6.4% цены стрэнгла! За одну ночь! Чтоб я так жил.
Давайте посмотрим график суточного распада по страйкам в %:
------------------------------------------------------------------------------------------------------- --- Функция получения результатов свечей в .CSV в виде: --- <Инструмент> <Дата> <Время> <Цена_Open> <Цена_High> <Цена_Low> <Цена_Close> <Объем> --- BRN0 1 20200605 200100 42.15 42.16 42.1 42.1 2150 ------------------------------------------------------------------------------------------------------- is_run=true -- Параметры tInstr="BRN0" --код инструмента/бумаги classcode="SPBFUT" --код класса инструмента/бумаги, если нужен фондовый рынок - вводить TQBR вместо SPBFUT iNterval=INTERVAL_M1 --таймфрейм -- доступные таймфреймы указаны в справке Quik (qlua.chm в папке с quik) по поиску CreateDataSource -- пример INTERVAL_H1 corrTime=3 --Время МСК. C сервера время приходит без корректировки. pFile="w:\\temp" --путь, где будет создаваться файл cBars=10 --сколько свечей надо вывести --настройка параметров function OnInit() out_file=io.open(pFile .."\\"..tostring(tInstr)..".csv","w") is_run=(out_file~=nil) ds=CreateDataSource(classcode, tInstr, iNterval ) --создаем источник данных ds:SetUpdateCallback(NewChartData) --обновление последних данных end function strText(int) local m=tostring(int) local mLen=string.len(int) if mLen==1 then Output="0" .. tostring(m) else Output=m end return Output end function main() while is_run do local Size=ds:Size() --Получение количества всех свечей в источнике данных if cBars>Size then cBars=Size-1 end for i=Size-cBars, Size, 1 do local O=ds:O(i) -- Значение цена открытия свечи local H=ds:H(i) -- Значение High для свечи local L=ds:L(i) -- Значение Low для свечи local C=ds:C(i) -- Значение Close для свечи local V=ds:V(i) -- Значение Volume для свечи local T=ds:T(i) -- Значение Time для свечи sTime=os.time(T) datetime=os.date("!*t",sTime) --вывод в файл out_file:write(tInstr..";"..tostring(iNterval)..";"..tostring(datetime.year)..tostring(strText(datetime.month))..tostring(strText(datetime.day))..";"..tostring(strText(datetime.hour + corrTime))..tostring(strText(datetime.min))..tostring(strText(datetime.sec))..";"..tostring(O)..";"..tostring(H)..";"..tostring(L)..";"..tostring©..";"..tostring(V).."\n") out_file:flush() --запись данных end out_file:close() sleep(1000) -- приостановка на 1 секунду out_file=io.open(pFile .."\\"..tostring(tInstr)..".csv","w") end end