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

по

ЛУЧШИЕ ФИЛЬМЫ О ТРЕЙДИНГЕ!!!!

ФИЛЬМЫ КОТОРЫЕ ОБЯЗАТЕЛЬНО ДОЛЖЕН ПОСМОТРЕТЬ КАЖДЫЙ ТРЕЙДЕР

Сохраните себе для просмотра! (Не забудте отблагодарить) 

1. «Аферист» (Rogue Trader, 1999) 

Резюме: Более динамичная британская версия «Wall Street.» 

Сюжет: за основу взята реальная история трейдера банка Barings, Ника Лисона, роль которого исполняет Юэн МакГрегор. 

2. «Поменяться местами» (Trading Places,1983) 

Резюме: Самая веселая комедия об Уолл Стрит. 

Сюжет: Слушать рассуждения Эдди Мерфи о фьючерсах и рынках — что может быть смешнее? 

3. «Варвары у ворот» (Barbarians At The Gate, 1993) 

Резюме: фильм и книга – это классика 

Сюжет: выкуп RJR Nabsico за кредитные средства 

4. «Уолл Стрит» (Wall Street, 1987) 

Резюме: классическая картина об Уолл Стрит. 

Сюжет: Изначально, режиссер Оливер Стоун планировал обличить жажду наживы, которая царила на Уолл Стрит в 1980-х. Он даже не подозревал, что фильм станет шедевром в финансовой сфере. Персонаж Майкла Дугласа, Гордон Гекко, отчасти списанный с Майкла Милкена и Ивана Бески, стал всеобщим любимцем. 



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

Об одном преимуществе трендовых систем перед контртрендовыми

Почти все торговые системы одного инструмента, основанные на анализе прошлых цен сделок по этому инструменту, можно классифицировать на два идейных типа.
1. Трендовые. Это когда если когда-то в каком-то смысле цена выросла, то покупаем. Если когда-то в каком-то смысле цена упала, то продаем.
2. Контртрендовые. Это когда если когда-то в каком-то смысле цена выросла, то продаем. Если когда-то в каком-то смысле цена упала, то покупаем.
Конечно, есть и смешанные, например, лонг по пересечению МА вверх и выход по тейкпрофиту. Вход здесь трендовый, выход--контртрендовый. И почти любая сложная система будет использовать как трендовые, так и контртрендовые идеи. Но здесь мы обсудим именно идейную классификацию.  

В идеальном мире неэффективностей, связанных с отклонением от беспамятного броуновского движения, без разницы какая неэффективность--трендовая или контрендовая. Например, вот здесь она контртрендовая: https://smart-lab.ru/blog/186186.php. Ну и отличный граальчик выходит, жаль что это модель всего лишь. В реальной жизни однако неэффективности не есть отклонение от броуновского движения. То, что рынок так похож на броуновское движение--это следствие того, что все торгующие постоянно ищут неэффективности (в широком смысле, если по простому, то ищут где бы добыть бабла). То есть «броуновость» рынка в каком-то смысле может быть неплохо описана моделью среднего поля, когда из-за невозможности разобраться в действиях отдельных торгующих вводят некую эффективную величину. Благо на рынке это сделать очень просто, там ничего и придумывать не надо, эта эффективная величина--цена. То есть неэффективность в реальном рынке--это не отклонение от броуновского движения, это скорее отклонение от усредненного по всем неэффективностям состояния. С этой точки зрения рынок--это такая суперпозиция поисков неэффективностей (то есть поисков бабла) различного калибра и известности, каждая из которых торгуется своим кругом торгующих со своими финансовыми, умственными и другими возможностями. 

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

Автоматизация торговли для нищеброда. Парсер+исходники для автоматизации торговли через Tradingview.

Добрый день, друзья!

          Писать много не буду. Напомню лишь о том, что если у Вас есть стойкое желание автоматизировать свою торговлю при этом сделать это с минимальными издержками без покупки дорогостоящего ПО, то решением может стать использование возможностей сайта Tradingview  и моего парсера (см. детальную информацию о нем в постах:12  и 3).

Возможности сайта Tradingview:

  1. Написание торговых стратегий любой сложности с использование большого количества встроенных индикаторов и уже готовых скриптов. По мне встроенный язык PinrScript (скриптовый язык понятный даже не программисту) на много удобнее, чем построение робота из визуальных блоков (а главное точнее быстрее).
  2. Тестирование стратегий с использование внутреннего тестера (модуль оптимизации, к сожалению, отсутствует).
  3. Большое трейдерское сообщество, можно подчерпнуть интересные идеи.
  4. График котировок в режиме реального времени, а главное всё вышеописанное бесплатно.


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

Подскажите, люди добрые

Достаточно-ли будет книг

Программирование на языке Lua
Автор:Роберту Иерузалимски

Чистый код: создание, анализ и рефакторинг
Автор:Роберт Мартин


чтобы со временем писать программки, помощников и роботов для себя под QUIK? Со временем  и для себя?

А то коллективное макание Смарт-Лабом в помои кбробота наводит на определённые мысли… «Надо? Сделай сам!» ©

Как живет народ в мире

    • 04 ноября 2018, 14:27
    • |
    • Geist
  • Еще

Наткнулся у Лебедева на интересную ссылку. 

Люди спрашивают у семьи ежемесячный доход в $, потом заходят к ним в дом и фотографируют всё: комнаты, еду, бытовую технику, одежду — вообще всё практически. Сижу разглядываю.

Можно выбирать по странам и доходам.
250+ семей из 50 стран.

Коллега Fry (Антон) дал видео, где, как я понимаю, организаторы проекта разъясняют его детали. Добавляю его сюда, коллеге Фраю спасибо.

Переоптимизация?

Добавили тут на днях в ТСЛаб возможность штатным образом случайные числа получать. В связи с чем возникла идея устроить небольшой стресс тест стратегиям, заменив имеющееся управление позицией выходом по рынку через случайное количество баров.
Я считаю, что то, что принято называть переоптимизацией, кроется как раз в управлении позицией. Если подумать, то в точке входа подгонки не может быть по определению. Ведь задача как раз найти такое соотношение параметров, которое работает в нашу сторону как можно чаще. И чем сильнее будет подгонка под идеальный сетап — тем лучше, тем точнее мы опишем желаемую ситуацию. А вот с выходом всё иначе. Тут уже есть конкретные точки входа и конкретный набор свечей на истории… И вот как раз тут может быть подгонка параметров стопа, тейка, трейлинга и т.п. под эти конкретные ситуации..
Подгонка может быть столь сильной, что за ней вполне может спрятаться полное отсутствие положительного смещения вероятности в точке входа…
Вот мне и стало интересно, что если выход из позиции будет произвольным? Тогда, по идее, значительный перевес положительных исходов может намекать на наличие положительного смещения вероятности в точке входа.
Для эксперимента взял 2 стратегии на Ri. Одна, проверенная девятью месяцами реала и подтвердившая свою профпригодность на сегодняшний день, и другая — простая, состряпанная на скорую руку, стратегия по скользяшкам с максимальным фиттингом (оптимизация точки входа одновременно с трейлингом по широкому диапазону параметров на всей истории за один проход). Везде стоит комиссия 20п.
Итак, изначальная эквити «проверенной» стратегии выглядит так:
Переоптимизация?



( Читать дальше )
  • обсудить на форуме:
  • TSLab

Сравнение облигаций и вкладов.

    • 30 октября 2018, 09:13
    • |
    • dekab1
  • Еще
Много споров, что выгодней — ОФЗ (муни) или вклады в банке.

Для сравнения берем короткие ОФЗ 26214, доход 7,9%, цена 98% к номиналу, налог на разницу к номиналу (100-98)*13%= 0,26%, коммиссия брокера минимум 0,03% (в среднем 0,05%), депозитарий минимум 120 руб в год
Чистая доходность  около 7,8%
Учитываем дополнительные риски брокера (т.е стоит рассматривать только крупных брокеров, желательно госы, оптимальный по тарифам Открытие)
По ОФЗ, единственный плюс, что при повышении цены в стакане, можно быстро срубить деньги.
К примеру, в сентябре 18 зашел на крупную сумму в 3 летки и спустя неделю вышел, заработав 1% за неделю. Чистое везение, т.к цена быстро выросла.

Муниципальные облигации -  максимальная доходность и минимальный срок погашения подходит под Мордовия 03 — 9,1%, погашение 2,9 года (с амортизацией около 1 года). Естественно риски по ней зашкаливают, т.к регион закредитован по уши. Чистая доходность с учетом всех расходов 9%
Те регионы, которые более менее надежны дают доходность на уровне ОФЗ.

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

ТСЛАБ+IB опыт торговли америки

    • 29 октября 2018, 08:48
    • |
    • ves2010
  • Еще

ТСЛАБ+IB опыт торговли америки

 

Давненько не писал. Много работал.

 

0 Пишу про акции. Фьючи дороже. Там нужен счет от ляма грина и выше. В техническом плане связка Тслаб+IB весьма стабильна. Напрягает сильно 13-14ти часовой рабочий день с 10 утра до 23-24 ночи без праздников.

 

1 В марте 2017г появилась возможность протестить америку при помощи связки тслаб2+IQfeed. Что позволяло выйти на алготорговлю на америке. Где то к августу сформировалась общая картинка. В мае 2018 закинул 74000 баксов. И где то в конце июля стал торговать роботами под америку на связке тслаб2+ IB через TWS. Приоиграл -10к баксов из них где то больше половины на багах и глюках. Наработал опыт. Делюсь.

 

2 Сразу скажу что по деньгам это дорого и затратно. Тслаб 4000руб в месяц + IQfeed 7000руб + выделенный сервер в датацентре 5000 в месяц + 1500 расходы на IB. Чтоб просто посмотреть и торговать надо иметь расход в районе -18000 в месяц или -210к в год. Дорого вкрай. Чтоб расходы были хотяб на уровне <5% в год размер размер счета должен быть более  4мио руб.



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

QUIK: Бенчмарк ОФЗ к ставке ЦБ

    Может кому будет интересен скрипт на QLUA, который выступает простым бенчмарком ОФЗ с постоянным купоном к ставке ЦБ.
Основные параметры доходность и премия к ставке ЦБ, с учетом дюрации.
Скрипт не работает онлайн (оперативность тут не принципиальна), при запуске собирает параметры в таблицу и выводит на экран.
В дальнейшем планируется эти данные использовать для анализа премии доходности по дюрации для муниципальных и корпоративных облигаций к ОФЗ.

QUIK: Бенчмарк ОФЗ к ставке ЦБ


    Код скрипта на github (на github две версии одна в utf-8 для просмотра и основная версия в win1251, т.к. quik понимает только его):
github.com/trantor77/lua_scripts/boundsOFZ.lua

    Код скрипта:
--переменные
keyRateCB = 7.5
classCode = "TQOB"

function CreateTable()
    t_id = AllocTable()
    AddColumn(t_id, 0, "Бумага", true, QTABLE_STRING_TYPE, 15)
    AddColumn(t_id, 1, "Цена", true, QTABLE_DOUBLE_TYPE, 15)
    AddColumn(t_id, 2, "Доходность, %", true, QTABLE_DOUBLE_TYPE, 15)
    AddColumn(t_id, 3, "Дюрация, лет", true, QTABLE_DOUBLE_TYPE, 15)
    AddColumn(t_id, 4, "Купон, %", true, QTABLE_DOUBLE_TYPE, 15)
    AddColumn(t_id, 5, "Премия к ЦБ, бп", true, QTABLE_INT_TYPE, 15)
    AddColumn(t_id, 6, "Погашение", true, QTABLE_STRING_TYPE, 15)
    t = CreateWindow(t_id)
    SetWindowCaption(t_id, "ОФЗ")
end

function string.split(str, sep)
    local fields = {}
    str:gsub(string.format("([^%s]+)", sep), function(f_c) fields[#fields + 1] = f_c end)
    return fields
end

function getParamNumber(code, param)
    return tonumber(getParamEx(classCode, code, param).param_value)
end

function formatData(prm)
    return string.format("%02d.%02d.%04d", prm%100, (prm%10000)/100, prm/10000)
end

CreateTable()

arr = {}
sec_list = getClassSecurities(classCode)
sec_listTable = string.split(sec_list, ',')
j = 0
for i = 1, #sec_listTable do
    secCode = sec_listTable[i]
    securityInfo = getSecurityInfo(classCode, secCode)
    short_name = securityInfo.short_name
    if short_name:find("ОФЗ 26") ~= nil then
        j = j + 1
        r = {}
        r["short_name"] = short_name
        r["price"] = getParamNumber(securityInfo.code, "PREVPRICE")
        r["yield"] = getParamNumber(securityInfo.code, "YIELD")
        r["duration"] = getParamNumber(securityInfo.code, "DURATION")/365
        couponvalue = getParamNumber(securityInfo.code, "COUPONVALUE")
        couponperiod = getParamNumber(securityInfo.code, "COUPONPERIOD")
        r["coupon"] = ((365/couponperiod) * couponvalue)/10
        r["bonus"] = (r["yield"] - keyRateCB)*100
        r["mat_date"] = getParamNumber(securityInfo.code, "MAT_DATE")
        table.insert(arr, j, r)
    end
end

table.sort(arr, function(a,b) return a["duration"] < b["duration"] end)

for j = 1, #arr do
    row = InsertRow(t_id, -1)
    SetCell(t_id, row, 0, arr[j]["short_name"])
    price = arr[j]["price"]
    SetCell(t_id, row, 1, string.format("%.2f", price), price)
    yield = arr[j]["yield"]
    SetCell(t_id, row, 2, string.format("%.2f", yield), yield)
    duration = arr[j]["duration"]
    SetCell(t_id, row, 3, string.format("%.2f", duration), duration)
    coupon = arr[j]["coupon"]
    SetCell(t_id, row, 4, string.format("%.2f", coupon), coupon)
    bonus = arr[j]["bonus"]
    SetCell(t_id, row, 5, string.format("%.0f", bonus), bonus)
    mat_date = arr[j]["mat_date"]
    SetCell(t_id, row, 6, formatData(mat_date), mat_date)
end
  • обсудить на форуме:
  • Quik Lua

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