Избранное трейдера Максим

по

Бесплатная раздача торговых утилит и робота на MQL4

Всех приветствую.

Решил поделиться своими бесплатными продуктами на mql4. Подавляющая доля программ из списка — торговые утилиты. Т.е. это программы вспомогательного назначения, которые самостоятельно не принимают торговых решений, а только упрощают трейдеру выполнение некоторых рутинных операций.

Из торговых роботов в этом списке представлен только продукт Mr. Average — усредняющийся советник. Вдаваться в подробности того, что такое усреднение позиции я не буду. Скажу лишь, что стратегия весьма опасная. При необдуманном и безответственном использовании — слив депозита это только вопрос времени. Так что, я бы сказал, что данный советник скорее полуавтомат. Т.е. требует знающего и понимающего оператора, который будет выбирать для использования стратегии нужное время и правильные инструменты. 

Все эти продукты опубликованы на официальном Маркете для MQL-программ. На странице каждого продукта имеется подробное описание, а у некоторых ещё и видеоинструкция по применению.

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

Два года инвестиций в ИИС. Промежуточный результат.

Друзья, приветствую.

Те, кто следит за моей лентой, помнят, что ещё недавно я бился с возвратом НДФЛ по ИИС за 2017 год. Подробности можно найти по ссылкам ниже. Чудо произошло и «НДФЛ» мне упал на счёт 9.11.2018.

Сегодня я хочу опубликовать мой результат инвестиций с учетом взносов (которые кстати поступали неравномерно на мой счёт ИИС), по аналогии с прошлогодней публикацией.

Итак, общая доходность инвестиций за период с 03.11.2016 по 09.11.2018 составила 28,7%, что эквивалентно 13,3% годовых.

Два года инвестиций в ИИС. Промежуточный результат.

На мой взгляд – это отличный результат по нескольким причинам:

  1. Это больше банковского депозита в любом из топ-20 банков (как сравнение с безрисковой инвестицией)
  2. Это больше доходности по инвестициям в акции за тот же период (смотрите индекс MOEX) и что гораздо важнее, при многократно меньшей волатильности.


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

Универсальная торговая система «УТС(t) US500», для торговли фьючерсом U500 на Московской бирже (МОЕХ) …

Универсальная торговая система «УТС(t) US500», для торговли фьючерсом U500 на Московской бирже (МОЕХ) …

ТС(t) или Торговая система (t) - это свод правил и условий совершения трейдером тех или иных торговых операций на финансовом рынке, например продажи или покупки фьючерса US500  на срочном рынке Московской биржи (МОЕХ).  А о том, что означает (t) — можно будет узнать в конце этого поста …



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

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

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



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

Пример выигрышной торговой стратегии

    • 29 октября 2018, 07:31
    • |
    • AlexChi
  • Еще

Пример выигрышной торговой стратегии


          Очень часто люди не могут найти действенную торговую стратегию, которая бы работала на большинстве рынков и была бы эффективна длительное время. Трейдерские форумы заполнены поисками торгового “Грааля”, многие разрабатывают сверхсложные схемы, изучают теорию хаоса или теорию нечетких множеств. Как мне кажется, все гораздо проще и ниже я хотел бы привести пример такой стратегии. Этой стратегией я пользуюсь уже несколько лет и на собственном торговом опыте убедился в ее стабильной прибыльности. Казалось бы, какой смысл мне делиться информацией подобного рода? Ведь если все будут пользоваться этой стратегией, то она неизбежно потеряет большую часть своей прибыльности или даже будет приносить убыток? На самом деле, конечно, не все так просто. Я абсолютно уверен, что даже после того, как данная стратегия будет описана, большинство людей не будут ей пользоваться, а те, кто решится на ее использование, не сможет торговать на ее основе, прежде всего, из-за элементарного отсутствия дисциплины. Итак, заканчиваю введение и перехожу непосредственно к конкретике. Моя торговая стратегия базируется на следующих трех принципах:

  1. Не использовать заемные средства (плечи).
  2. Не торговать без обеспечения (не “шортить”).
  3. Покупать только в тех случаях, когда большинство факторов указывают на рост бумаги.


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

Как я за 2 года сделал финансовый сайт в 2 раза больше Смартлаба и [почти] ничего не заработал

    • 27 октября 2018, 09:10
    • |
    • anektar
  • Еще
Я тут недавно постил свою методику заработка пенсионных баллов на онлайн-проектах, как трейдеру не остаться без пенсии после слива депозита. У людей в комментариях были вопросы по сайтам, и как я на них зарабатываю. Я сделал вывод, что многим интересна тема инвестиций в сайты и заработка на сайтах.

Могу кратенько спалить немного инфы о своем основном текущем интернет-проекте и заработке с него. Трейдерам будет полезно (все равно торчишь у монитора, сливаешь, хоть бы что полезное сделал). Стебусь, конечно. Ну а если серьезно, сайты позволяют серьезно диверсифицировать доходы и снизить личные финансовые риски в рамках трейдерского лайфстайла (кровать-монитор-кровать — вы же не про Майами, тачки и телок сейчас подумали?)

Как заработать на своем сайте

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

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

график Газпром в долларах для Квика

    • 25 октября 2018, 19:48
    • |
    • gardist
  • Еще
1. В папке с Квиком создаем директорию LuaIndicators.
2. В этой папке создаем файл gazp_usd.lua, туда записываем:
Settings = 
{
   Name = "GAZPROM_USD",
   tag = "GAZP",
   tag1 = "GAZP_USDRUB",
   line=
   {
      {Name = "line1", Color = RGB(0, 0, 255), Type = 1,Width = 1}
   }
}

vPrice=1;

function Init()
   return 1
end

function OnCalculate(index)
	local vOutFlag=0;
	local vGazp =(getCandlesByIndex(Settings.tag, 0, index-1, 1)[0].close or 1) ;
	local vUSDRUB=(getCandlesByIndex(Settings.tag1, 0, index-1, 1)[0].close or 1);
	if vGazp>0 then
		vOutFlag=1;
	else
		vOutFlag=0;
	end;
	if vUSDRUB>0 then
		vOutFlag=1;
	else
		vOutFlag=0;
	end;
	if vOutFlag > 0 then
		local Out = vGazp/vUSDRUB;
		vPrice=Out;
	end;
	return  vPrice
end
3. В Квике создаем график с курсом доллара (USDRUB_TOM).
4. К графику добавляем график Газпрома (ГАЗПРОМ ао).
5. Идем в настройки графика, в разделе «Дополнительно» указываем «Идентификатор»: GAZP -для графика с ценой Газпрома, GAZP_USDRUB -для графика с курсом.
6. Добавляем индикатор (выбираем из выпадающего списка GAZPROM_USD).
график Газпром в долларах для Квика
7. Уменьшаем ненужные поля. Если график не отобразился — даблкликаем на графике — жмем «Применить»:

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

Тест стратегии с мелочами и аномалиями.

Продолжение.

Один из простых признаков, отличающих случайную последовательность от рыночных данных — характер реакции на уровни или на то, что обычно называют уровнем (вступление для любителей рассуждений о рыночном шуме).

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

Cознательно выбран тест Si, ходившего в небольшом диапазоне, вместо традиционного RI.

На картинке — результат теста простой системы, входящей «на отбой» и «на пробой» уровня с фиксированными стопами и лотностью. Она вполне надежно сливает, теряя на спреде и комиссии.
Тест стратегии с мелочами и аномалиями.

Первая модернизация — добавление алгоритма, распознающего разные ситуации, ведь люди ведут себя в зависимости от наблюдаемого. Первые варианты использовали только относительно простой подсчет амплитуд и касаний, но на момент тестирования (2014) получалось программно различать более десятка типов уровней, с весьма тонкими различиями. Самое грубое деление на «плохие и хорошие» немедленно перевело систему в доходные и резко уменьшило чувствительность к оптимизации.

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

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

Обзор НМТП - супер актив, но можно подождать цены пониже

Решил написать обзор по компании НМТП — крупнейшей портовой группе в РФ.

Сразу скажу, какой-то особой инвестиционной идеи я здесь пока не вижу, не смотря на то, что НМТП — это первоклассный актив. Я предпочитаю подождать и буду покупать эту акцию, если цены еще ощутимо припадут (с пика 2017 г. они упали уже на треть). На уровне ~5 руб., например, этот актив будет выглядеть уже очень привлекательно. Пока я потихоньку покупаю Интер РАО (инвест идею писал раньше)

Саммари по НМТП

1) Порт развивается, финпоказатели растут, он не такой дешевый как в 2015-2016 гг., но нельзя сказать что дорогой. Еще немного снижения и актив будет оценен очень привлекательно, возможно куплю его вместо НКХП (но только после дополнительного падения)

2) Транснефть купила 25% с существенной премией к рынку и стала контролирующим акционером. Очевидно, что ей не интересны ненефтяные сегменты порта (непрофильный бизнес), поэтому тут может быть какая-то сделка в будущем (в т.ч. спин офф?).



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

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