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

по

Санкции будут серьезные!

   Добрый день смартлаб! Все уже в курсе, что сенат США разработал новый законопроект о введение дополнительных санкций в отношении РФ, думаю на этот раз все будет серьезно.
Санкции будут серьезные!
   Не зря наш рынок в 2017 году показывает нисходящею тенденцию в то время как SPY покоряет новые максимумы (Взял у King Schultz):
Санкции будут серьезные!

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

Кто не понял, тот поймёт или почему искандеры не смеются.

Россия в мае купила облигации США на $3.8 млрд, увеличив их портфель до $108.7 млрд. За год: +$20,5 млрд.
--------------------
РФ: экспорт товаров в 2016 году:
Кто не понял, тот поймёт или почему искандеры не смеются.
Cуммарная установленная мощность солнечных электростанций Китая превысила 100 ГВт и достигла 101,82 ГВт.
--------------------
Количество активных буровых установок в Канаде за неделю увеличилось на 15, до 206.
--------------------
Мировой рынок акций превысил стоимость в $76.3 трлн, новый исторический максимум, 100% от ВВП
Кто не понял, тот поймёт или почему искандеры не смеются.

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

За ошибки Трампа расплачивается доллар. Обзор на предстоящую неделю от 23.07.2017

    • 23 июля 2017, 22:00
    • |
    • Kitten
      Популярный автор
  • Еще
По ФА…

На уходящей неделе:
За ошибки Трампа расплачивается доллар. Обзор на предстоящую неделю от 23.07.2017

Заседание ЕЦБ

«Руководство вперед» осталось неизменным, формулировка об увеличении размера/продолжительности программы QE при необходимости была сохранена без изменений.
Драги сообщил, что это решение было принято единогласно, а причина сохранения данной формулировки связана с возможным ужесточением финансовых условий, при которых возникнет угроза достижению цели ЕЦБ по инфляции, в этом случае могут потребоваться дополнительные стимулы.

Риторика Драги на пресс-конференции была голубиной.
Главный акцент главы ЕЦБ был на инфляции.
Драги сообщил, что, невзирая на восстановление экономики и падение безработицы, эти факторы не являются главными для изменения политики, т.к. мандат ЕЦБ учитывает только ценовую стабильность.
Нет признаков роста зарплат, рост базовой инфляции остается слабым, инфляция останется на низких уровнях в ближайшие месяцы из-за падения цен на энергоносители.

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

Тут такое было... история пятничного слива))

Здравствуйте всем!!!

Я торгую средне- и долгосрок. Иногда под настроение торгую интрадей. Запас свободной маржи около 2000% обычно,  Диверсификация по 20-ти парам позволяют не париться, не крыть убыток, пересиживать годами убыточные позы.

Сделал за полтора года +240% и считал себя красафчиком. Но на днях произошло событие, после которого я никогда не стану прежним))

Итак..

ВНИМАНИЕ!!! Не пытайтесь повторить, трюки выполнены профессионалами.

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

В, общем, они со своим другом предложили мне поторговать вместе. ...

В 23 часа прошлого воскресенья мы пристегнули ремни и ждали открытия. 

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

немного о моей жизни

Итак, после нескольких недель мучений, мы накатили на смартлаб https протокол. Вопреки прогнозам, смартлаб не упал под нагрузкой. Над переводом смартлаба на https работали аж 6 человек. Была масса нюансов, вы их чувствовали: 
  • не работали ссылки в рассылке (в т.ч. восстановление пароля)
  • перестал работать счетчик постов
  • перестал работать RSS
  • не везде работало видео youtube
Сегодня мы завершили работу, выполнив принудительный редирект с http на https. Спасибо всем, кто был с нами!:)))
=========================
Пока простые смертные находятся на отдыхе, о чем рапортуют в своих инстаграммах, я помимо всего прочего наяриваю php.
Что я уже умею?

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

Код робота на LUA для QUIK

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

Предназначается для новичков в алготрейдинге, что-то типа болванки.

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

require"QL"

log = "sbrf.log"
seccode = "SRM6"
lots_in_trade = 80
accnt = ""
better = -5
chart = "sberbankxxx"
is_run = true
prev_datetime = {}
len = 100
basis = 9
k_bal = {0,1,2,3}
sell = false
buy = false
id = 0
first = true

function trade_signal(shift)
        number_of_candles = getNumCandles(chart)
        bars_temp,res,legend = getCandlesByIndex(chart,0,number_of_candles-2*len-shift,2*len)
        bars={}

        i=len
        j=2*len
        while i>=1 do
                if bars_temp[j-1].datetime.hour>=10 then
                        sk=true
                        if bars_temp[j-1].datetime.hour==18 and bars_temp[j-1].datetime.min==45 then
                                sk=false
                        end
                        if sk then
                                bars[i]=bars_temp[j-1]
                                i=i-1
                        end
                end
                j=j-1
        end

        t = len+1

        do_sell = false
        do_buy = true

        value = 0
        if do_sell then value = 1 end
        if do_buy then value = -1 end
        toLog(log,"value="..value.." on candle: "..bars[len].datetime.year.."-"..bars[len].datetime.month.."-"..bars[len].datetime.day.." "..bars[len].datetime.hour..":"..bars[len].datetime.min.."   O="..bars[len].open.." H="..bars[len].high.." L="..bars[len].low.." C="..bars[len].close.." V="..bars[len].volume)
        return value
end

function mysplit(inputstr, sep)
        if sep == nil then
                sep = "%s"
        end
        local t={} ; i=1
        for str in string.gmatch(inputstr, "([^"..sep.."]+)") do
                t[i] = str
                i = i + 1
        end
        return t
end

function OnInit(path)
        log=getScriptPath()..'\\'..log
        toLog(log,"==========OnInit: START")
        toLog(log,"==========OnInit: FINISH")
end

function OnStop()
        is_run = false
        toLog(log,"==========OnStop: script finished manually")
end

function CheckBit(flags, bit)
   -- Проверяет, что переданные аргументы являются числами
   if type(flags) ~= "number" then error("Ошибка!!! Checkbit: 1-й аргумент не число!"); end;
   if type(bit) ~= "number" then error("Ошибка!!! Checkbit: 2-й аргумент не число!"); end;
   local RevBitsStr  = ""; -- Перевернутое (задом наперед) строковое представление двоичного представления переданного десятичного числа (flags)
   local Fmod = 0; -- Остаток от деления
   local Go = true; -- Флаг работы цикла
   while Go do
      Fmod = math.fmod(flags, 2); -- Остаток от деления
      flags = math.floor(flags/2); -- Оставляет для следующей итерации цикла только целую часть от деления
      RevBitsStr = RevBitsStr ..tostring(Fmod); -- Добавляет справа остаток от деления
      if flags == 0 then Go = false; end; -- Если был последний бит, завершает цикл
   end;
   -- Возвращает значение бита
   local Result = RevBitsStr :sub(bit+1,bit+1);
   if Result == "0" then return 0;
   elseif Result == "1" then return 1;
   else return nil;
   end;
end;

function killorders(ccode,scode)
    for i=0,getNumberOf("orders")-1,1 do
        local t=getItem("orders", i)
        if t ~= nil and type(t) == "table" then
            if( t.seccode == scode and CheckBit(t.flags, 0) == 1) then
                local transaction={
                    ["TRANS_ID"]=tostring(math.random(2000000000)),
                    ["ACTION"]="KILL_ORDER",
                    ["CLASSCODE"]=ccode,
                    ["SECCODE"]=scode,
                                        ["ACCOUNT"] = accnt,
                    ["ORDER_KEY"]=tostring(t.ordernum),
                }
                                res=sendTransaction(transaction)
            end
        end
    end
end

function killstoporders(ccode,scode)
    for i=0,getNumberOf("stop_orders")-1,1 do
        local t=getItem("stop_orders", i)
        if t ~= nil and type(t) == "table" then
            if( t.seccode == scode and CheckBit(t.flags, 0) == 1) then
                local transaction={
                    ["TRANS_ID"]=tostring(math.random(2000000000)),
                    ["ACTION"]="KILL_STOP_ORDER",
                    ["CLASSCODE"]=ccode,
                    ["SECCODE"]=scode,
                                        ["ACCOUNT"] = accnt,
                    ["STOP_ORDER_KEY"]=tostring(t.ordernum),
                }
                                res=sendTransaction(transaction)
            end
        end
    end
end


function main()
        toLog(log,"==========main: START")
        while is_run do
                if isConnected() == 1 then
                        ss = getInfoParam("SERVERTIME")
                        if string.len(ss) >= 5 then
                                hh = mysplit(ss,":")
                                str=hh[1]..hh[2]
                                h = tonumber(str)
                                if (h>=1000 and h<1400) or (h>=1405 and h<1845) or (h>=1905 and h<2350) then
                                        if first then
                                                for ti = 50,2,-1 do     trade_signal(ti) end
                                                if buy and not sell then message(seccode.." Current state: green and buy",1) end
                                                if sell and not buy then message(seccode.." Current state: red and sell",1) end
                                                if buy and sell then message(seccode.." ERROR: green and red",1) end
                                                if not buy and not sell then message(seccode.." WARNING: nothing",1) end
                                                first = false
                                        end
                                        prev_candle = getPrevCandle(chart,0)
                                        if not isEqual(prev_candle.datetime,prev_datetime) then
                                                current_value = trade_signal(1)

                                                if current_value ~= 0 then
                                                        optn = "B"
                                                        if current_value==1 then optn = "S" end
                                                        curvol=0
                                                        no=getNumberOf("FUTURES_CLIENT_HOLDING")
                                                        if no>0 then
                                                                for i=0,no-1,1 do
                                                                        im=getItem("FUTURES_CLIENT_HOLDING", i)
                                                                        if im.sec_code==seccode then
                                                                        curvol=im.totalnet
                                                                        end
                                                                end
                                                        end
                                                        trvol = -current_value*lots_in_trade-curvol
                                                        if trvol ~= 0 then
                                                                killorders("SPBFUT",seccode)
                                                                killstoporders("SPBFUT",seccode)
                                                                f = io.open(getScriptPath().."\\sbrf2_pos.txt","r")
                                                                sbrf2_pos=f:read("*n")
                                                                f:close()
                                                                f = io.open(getScriptPath().."\\sbrf3_pos.txt","r")
                                                                sbrf3_pos=f:read("*n")
                                                                f:close()
                                                                pr,n,l = getCandlesByIndex ("futsber", 0, getNumCandles("futsber")-1, 1)
                                                                local trans =
                                                                {
                                                                        ["ACTION"] = "NEW_ORDER",
                                                                        ["CLASSCODE"] = "SPBFUT",
                                                                        ["SECCODE"] = seccode,
                                                                        ["ACCOUNT"] = accnt,
                                                                        ["OPERATION"] = optn,
                                                                        ["PRICE"] = toPrice(seccode,pr[0].close+current_value*better),
                                                                        ["QUANTITY"] = tostring(math.abs(curvol-sbrf2_pos-sbrf3_pos)),
                                                                        ["TRANS_ID"] = tostring(getTradeDate().month*100+getTradeDate().day+id)
                                                                }
                                                                id = id+1
                                                                --res = sendTransaction(trans)
                                                                message(seccode.." Send : " .. res, 2)
                                                                toLog(log,"Send: ".. res)
                                                                for btr=0,200,5 do
                                                                        local trans =
                                                                        {
                                                                                ["ACTION"] = "NEW_STOP_ORDER",
                                                                                ["CLASSCODE"] = "SPBFUT",
                                                                                ["SECCODE"] = seccode,
                                                                                ["ACCOUNT"] = accnt,
                                                                                ["OPERATION"] = optn,
                                                                                ["PRICE"] = toPrice(seccode,pr[0].close-current_value*btr),
                                                                                ["STOPPRICE"] = toPrice(seccode,pr[0].close-current_value*(btr+better)),
                                                                                ["QUANTITY"] = tostring(6),
                                                                                ["TRANS_ID"] = tostring(getTradeDate().month*100+getTradeDate().day+id),
                                                                                ["EXPIRY_DATE"] = "GTC"
                                                                        }
                                                                        id = id+1
                                                                        --res = sendTransaction(trans)
                                                                        message(seccode.." Send : " .. res, 2)
                                                                        toLog(log,"Send: ".. res)
                                                                end
                                                                if current_value == 1 then
                                                                        message(seccode..' RED: buy->sell',1)
                                                                        toLog(log,"RED signal")
                                                                else
                                                                        message(seccode..' GREEN: sell->buy',1)
                                                                        toLog(log,"GREEN signal")
                                                                end
                                                        else
                                                                if current_value == 1 then
                                                                        message(seccode..' RED: buy->sell',1)
                                                                        toLog(log,"RED signal, but nothing to do")
                                                                else
                                                                        message(seccode..' GREEN: sell->buy',1)
                                                                        toLog(log,"GREEN signal, but nothing to do")
                                                                end
                                                        end
                                                else
                                                        if buy and not sell then toLog(log,"Nothing to do. Current state: green and buy",1) end
                                                        if sell and not buy then toLog(log,"Nothing to do. Current state: red and sell",1) end
                                                        if buy and sell then toLog(log,"Nothing to do. ERROR: green and red",1) end
                                                        if not buy and not sell then toLog(log,"Nothing to do. WARNING: nothing",1) end
                                                end
                                                prev_datetime = prev_candle.datetime
                                        end
                                end
                        end
                end
                sleep(5*1000)
        end
        toLog(log,"==========main: FINISH")
end
  • обсудить на форуме:
  • Quik Lua

Как быстро открыть форум по акциям какой-то компании?

Надеюсь все помнят? Допустим вы забыли во сколько сегодня суд по АФК системе.
Набираем команду <$AFKS> в консоли, открываем форум и смотрим. Если не указано, задаем на форуме этот вопрос.
Как быстро открыть форум по акциям какой-то компании?
если что, на все сообщения форума конкретной акции можно подписаться по емейлу или rss.

Прибыльность разных страйков

Хотел посоветоваться с экспертами – кто как подбирает страйки при направленной торговле опционами.

Итак, я понимаю куда двинется акция, и примерно насколько. Точное время начала и завершения движения угадать сложно, поэтому я беру опционы с запасом срока (скажем 3-9 месячные). Т.е. это не краткосрочные опционы (угадывание результатов ER и т.п.), а именно на 3-9 месяцев. Торгую в Америке, андерлаинги — акции компаний.

Вопрос, какой выбрать страйк, чтобы обеспечить максимальный профит от вложений?

Ведь это далеко необязательно что надо покупать опцион именно того страйка, куда ты предполагаешь придет цена БА.


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

 

Расскажу о своем опыте. Мой практический опыт на разных акциях говорит, что при движении в ожидаемом направлении максимально вырастает цена опционов, чей страйк удален примерно на 10% от текущей цены БА. Это действует в случае, если цена БА прошла только 5%, и все 10%, и даже 15%. Понятно, что при бОльших движениях цены уже имеет перекладываться в более дальние страйки. Причем что интересно, несмотря на то, что отношение цены опциона к его дельте тем лучше, чем дальше страйк вне денег, в реальности далекие опционы при движении цены БА в пределах 20% не вырастают так грандиозно (за счет других греков), и простой выбор по коэффициенту цена разделить на дельту – не дает лучшего результата.



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

"бездельник" Мартынов!

    • 18 июля 2017, 13:58
    • |
    • _stas_
  • Еще
пытался написать ТМ в личку по поводу его межпозвоночных грыж, но не могу — я наверное у него в ЧС
поэтому копирую своё сообщение сюда :

«я конечно, не очень положительно к тебе отношусь, но со здоровьем не шутят и вреда я тебе не желаю, 
поэтому скину ссылочку на сайт, на мой взгляд, лучшего специалиста страны по позвоночнику
я дружен  с его учеником
и знаю людей которые прошли лечение у него и у моего друга
результат налицо!
на сайте есть книга — ты любишь читать — думаю будет тебе полезна
он, академик Безнутров, пока еще работает — постарайся к нему попасть или хотя бы к его дочке
а вот и ссылка:
beznutrov.narod.ru/st.html
пока»

Надеюсь хоть тут прочитаешь! :)

P.S. думаю будет полезно всем!


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