Избранное трейдера no matter

по

Как распознать шлак? Фильтрация акций для портфеля.

Меня стали упрекать, что я называю шлаком такие ах   ах какие перспективные акции
АФК Система (AFKS) — может ли шлак совершить невозможное?
Чтобы не было недопонимания, я хочу тут пояснить, что шлаком я называю такие фишки, фундаментальные показатели которых свидетельствуют о том, что расти этой фишке больше некуда.
Упасть эта фишка может и не упадёт, но включать ее в портфель я бы не рискнул.
В портфель надо включать фишки с потенциалом роста, а не с вероятностью падения.
Какие же показатели фундаментального анализа помогут нам просто и эффективно рассортировать фишки на хорошие и плохие?
Для быстрой предварительной фильтрации я использую показатели EV и ЧП.
EV — это Enterprise Value, сумма Капитализации и Долга минус Наличность (Капитализация плюс Чистый Долг)
ЧП — это Чистая Прибыль
Все эти показатели уже посчитаны (всё уже посчитано за нас!!!) и их можно найти на Смартлабе в разделе Фундаментальный Анализ.
smart-lab.ru/q/shares_fundamental/?field=div_yield&type=MSFO&last_year=on
Далее нужно выбрать любимую акцию, открыть таблицу с данными отчётов МСФО, найти значения EV и ЧП, и поделить EV на ЧП.
Эмпирическим путём я определил, что если EV/ЧП=10 и более, то это шлак.
Теперь смотрим сюда
smart-lab.ru/q/MTSS/f/y/
Считаем
И удивляемся.
А ведь никто бы и не догадался, что это шлак, если бы не помогла простейшая арифметика.


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

TurboMartin, обновление

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

Чуть допилил и выложил на гитхаб.

Самая большая проблема и опасность любого Мартина — это слив депо.
Защитимся от этого параметром MaxDrillDown (суть стоплосс).
Если сумма всех убыточных позиций по деньгам достигает этого значения, то вся набранная поза сбрасывается, все счетчики обнуляются, и поиск начальной точки входа начинается заново.

Теперь скрипт лежит, однако, здеся: https://github.com/tp55/TurboMartin/blob/master/TurboMartin.lua

Пользуйтесь, не обляпайтесь.

Будут ошибки — обязательно пишите, хоть сюда, хоть в личку.

Робот-усреднятор (с исходниками)

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

Больше тебе, дорогой инвестор, не надо приглашать каких-то мошенников, чтобы слить свой депозит. Это, в полностью автоматическом режиме, можно сделать самому!
Заработать также можно самому. С какой-то вероятностью. Ну как всегда.

Представляю: TurboMartin. Настоящий, суровый, классический усреднятор.

Как работает алгоритм:
1) Робот ищет точку входа на основании простейшего пересечения ценой скользящей средней снизу вверх. Робот работает только в лонг.
2) Робот, находясь в режиме набора позиции, усредняется при выполнении двух условий: падении цены не менее, чем на параметр StepSize от последней сделки, и плюс, опять же, должно быть пересечение ценой скользящей средней вверх. Таким образом мы пропускаем длительные вертикальные ножи, стараясь растянуть усреднение как можно шире.

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

Анонс торговых сигналов

    • 15 апреля 2019, 19:09
    • |
    • AlexChi
  • Еще

 

Введение

Многие, наверное, слышали о системе BWS, по которой я публично торгую уже много месяцев и сигналы которой каждый день выкладываю здесь на смартлабе. Эта система – не единственное, что у меня есть. Помимо этой системы у меня есть еще 3 торговых робота. Вот они:

  1. Робот CandleMax
  2. Робот AVP
  3. Робот PVVI

Сигналами этих роботов я и планирую с вами поделиться.

Роботы спекулятивные, среднее время удержания позиции составляет около 3 дней. Срабатывают редко, сигналы бывают не каждую неделю.

Тем не менее, каждый из этих роботов прошел проверку на статистике с первого дня торгов на МММВ и по 29.12.2018. И результаты, показанные этими роботами, просто поражают!

Описание роботов

Робот CandleMax


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

Здесь вы можете найти подробное описание этой свечной модели:

Тестирование рабочей свечной модели на исторических данных



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

Робот "Два Боллинджера" с исходниками

Хорош философствовать. Давайте писать более полезные посты.
Итак, робот на двух графиках Боллинджера.
Общий принцип:
1) На цену накладываются два графика Боллинджера: с периодами 20 и 120 (назовем их local и global).
2) В зависимости от параметра внутри робота, входим либо когда цена входит внутрь local-Боллинджера (ContrTrendFlag=1), либо выходит из него (ContrTrendFlag=0).
3) Дополнительный фильтр: Лонг только когда когда мы в верхней половине global-Боллинджера, шорт — если в нижней.
Данные робот берет из графиков, так что график должен быть открыт, и прописаны идентификаторы.

График с двумя Боллинджерами выглядит примерно так:

Робот "Два Боллинджера" с исходниками

Настройки на цене и индикаторах не забудьте:

Робот "Два Боллинджера" с исходниками

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

Как я искусственный интеллект торговать научил

Однажды великий гуру трейдинга и знаток анекдотов Александр Михайлович (который Герчик) в одном из своих семинаров рассказал про один случай, когда он пытался алгоритмизировать работу с уровнями и нанял целого математика, чтобы тот разработал мат.аппарат и запрограммировал сигналы для отбоя/пробоя. Целый математик бился над задачей как рыба об лед, но, видимо, математик он был так себе и поэтому задачу решить не смог.

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

Потом времена ушли далеко вперед и появился Искусственный Интеллект (ИИ), который легко решает эту задачу, даже без понимания, как оно должно работать.
Собственно, ИИ появился еще лет 50 назад. Но в те давние времена (уже почти былинные), когда и трава была зеленее и небо голубее, компьютерное железо было не способно решать задачи такого уровня. Сегодня ситуация изменилась.



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

Что я использую по акциям США. Кратко.

Сейчас основной мой ресурс по поиску идей - https://seekingalpha.com/  Кого конкретно читаю распишу потом.
Также использую - https://www.zacks.com/ (тоже распишу), https://etfdb.com/ , https://www.dividendinvestor.com/https://www.dividend.com/ , https://www.elliottwavetrader.net/marketupdate/ , https://navelliergrowth.investorplace.com/portfolio-grader/ , https://www.simplysafedividends.com/intelligent-income , https://investorplace.com/ , https://www.investorsalley.com/ .
Также читаю taxfree  в жж (платная подписка).
Больше платных подписок нет, но подумываю про подписки в seekingalpha .
Возможно что-то забыл указать.
А вы чем пользуетесь?

STATDIV3 доработанный индикатор для quik на языке lua

если индикатор больше 0, то покупаем, если ниже то продаем

скачать можно здесь:dropmefiles.com/09FCu
как устанавливать смотрите предыдущие статьи: https://smart-lab.ru/blog/528424.php
название STATDIV3 это доработанный STATDIV


поведение индикатора на графике:
STATDIV3 доработанный индикатор для quik на языке lua


сам код индикатора:
Settings={
Name="STATDIV3",
period=50,
  line=
  {
    {
      Name="curve",
      Color=RGB(0,0,255),
      Type=TYPE_LINE,
      Width=1
    },
    {
      Name="line",
      Color=RGB(255,0,0),
      Type=TYPE_LINE,
      Width=1
    },
    {
      Name="MA",
      Color=RGB(0,0,255),
      Type=TYPE_LINE,
      Width=1
    },
    {
      Name="MA2",
      Color=RGB(0,128,128),
      Type=TYPE_LINE,
      Width=1
    },
    {
      Name="line2",
      Color=RGB(0,0,255),
      Type=TYPE_LINE,
      Width=1
    },
    {
      Name="line3",
      Color=RGB(0,128,128),
      Type=TYPE_LINE,
      Width=1
    }
  } 
}

function Init()
  cache_ind={}
  cache_ind2={}
  cache_ind3={}
  return 2
end

function OnCalculate(index)
  if index < Settings.period then
    return nil
  else
    local sum1=0
    local sum2=0
    local sum0=0
    local sum02=0
    local sum03=0
    for i=index-Settings.period+1, index do  
    do
      if C(i) > O(i) then
        sum1 = sum1 + C(i) - O(i)
        sum2 = sum2 + C(i) - O(i)
      else
        sum2 = sum2 + O(i) - C(i)
      end  
    end 
    cache_ind[index] = sum1/sum2    
    if index > Settings.period+12 then 
--[[
      sum0 = 1*cache_ind[index]+
            (1)*cache_ind[index-1]+
            (1)*cache_ind[index-2]+
            (1)*cache_ind[index-3]+
            (1)*cache_ind[index-4]+
            (1)*cache_ind[index-5]+
            (1)*cache_ind[index-6]+
            (1)*cache_ind[index-7]+
            (1)*cache_ind[index-8]+
            (1/2)*cache_ind[index-9]+
            (1/3)*cache_ind[index-10]+
            (1/4)*cache_ind[index-11]+
            (1/5)*cache_ind[index-12]
--]]
      sum0 = 1*cache_ind[index]+
            (1/2)*cache_ind[index-1]+
            (1/3)*cache_ind[index-2]+
            (1/4)*cache_ind[index-3]+
            (1/5)*cache_ind[index-4]+
            (1/6)*cache_ind[index-5]+
            (1/7)*cache_ind[index-6]+
            (1/8)*cache_ind[index-7]+
            (1/9)*cache_ind[index-8]+
            (1/10)*cache_ind[index-9]+
            (1/11)*cache_ind[index-10]+
            (1/12)*cache_ind[index-11]+
            (1/13)*cache_ind[index-12]

    end
--[[
    sum0 = sum0/(1+1+1+1+1+1+1+1+1+1/2+1/3+1/4+1/5)
--]]
    sum0 = sum0/(1+1/2+1/3+1/4+1/5+1/6+1/7+1/8+1/9+1/10+1/11+1/12+1/13)

       
    cache_ind2[index] = sum0
    if index > Settings.period+50 then   
      sum02 = 1*cache_ind2[index]+
            (1)*cache_ind2[index-1]+
            (1)*cache_ind2[index-2]+
            (1)*cache_ind2[index-3]+
            (1)*cache_ind2[index-4]+
            (1)*cache_ind2[index-5]+
            (1)*cache_ind2[index-6]+
            (1)*cache_ind2[index-7]+
            (1/2)*cache_ind2[index-8]+
            (1/3)*cache_ind2[index-9]+
            (1/4)*cache_ind2[index-10]+
            (1/5)*cache_ind2[index-11]+
            (1/6)*cache_ind2[index-12]
--[[
      sum02 = 1*cache_ind2[index]+
            (1/2)*cache_ind2[index-1]+
            (1/3)*cache_ind2[index-2]+
            (1/4)*cache_ind2[index-3]+
            (1/5)*cache_ind2[index-4]+
            (1/6)*cache_ind2[index-5]+
            (1/7)*cache_ind2[index-6]+
            (1/8)*cache_ind2[index-7]+
            (1/9)*cache_ind2[index-8]+
            (1/10)*cache_ind2[index-9]+
            (1/11)*cache_ind2[index-10]+
            (1/12)*cache_ind2[index-11]+
            (1/13)*cache_ind2[index-12]
--]]
    end
    sum02 = sum02/(1+1+1+1+1+1+1+1+1/2+1/3+1/4+1/5+1/6)
--[[
    sum02 = sum02/(1+1/2+1/3+1/4+1/5+1/6+1/7+1/8+1/9+1/10+1/11+1/12+1/13)
--]]
    cache_ind3[index] = sum0 - sum02
    if index > Settings.period+50 then   
      sum03 = 1*cache_ind3[index]+
            (1/2)*cache_ind3[index-1]+
            (1/3)*cache_ind3[index-2]+
            (1/4)*cache_ind3[index-3]+
            (1/5)*cache_ind3[index-4]+
            (1/6)*cache_ind3[index-5]+
            (1/7)*cache_ind3[index-6]+
            (1/8)*cache_ind3[index-7]+
            (1/9)*cache_ind3[index-8]+
            (1/10)*cache_ind3[index-9]+
            (1/11)*cache_ind3[index-10]+
            (1/12)*cache_ind3[index-11]+
            (1/13)*cache_ind3[index-12]
    end
    sum03 = sum03/(1+1/2+1/3+1/4+1/5+1/6+1/7+1/8+1/9+1/10+1/11+1/12+1/13)

  end  

  if sum1/sum2 > 0.5 and sum03 > 0 then
    sum1 = sum03
  else
    if sum1/sum2 < 0.5 and sum03 < 0 then
      sum1 = sum03 
    else 
      sum1 = 0
    end
  end

  return sum1, 0
end

end
 всем удачи!
  • обсудить на форуме:
  • Quik Lua

НДФЛ по Брокерским счетам и ИИС. Особенности переноса убытка.

Разбираем очень интересный реальный кейс:

за 2018 год Физлицом резидентом с одной стороны получен убыток по брокерскому счету (Операции с ФИСС) у брокера ХХХ на сумму около 3 млн руб,
 а с другой прибыль по ИИС в Открытии — 750 тыс руб, тип счета не определен, НДФЛ не возмещался.
В 2019 году уже образовалась прибыль почти 2 млн руб по основному брокерскому счету и небольшой + по ИИС
При выводе прибыли брокер хочет удержать НДФЛ за текущий год 13%(и это нормально), далее предлагается подать уточнение в налоговую по форме 3-НДФЛ чтобы оформить возврат удержанного брокером налога за 2019 (корректировка налоговой базы на сумму убытка в 2018)
-----------
Получившийся отрицательный финансовый результат может быть учтен налогоплательщиком как при расчете налога в текущем периоде (в случае, если по иным операциям получена прибыль), либо (если в текущем году налогооблагаемый доход по иным операциям отсутствует) получившийся убыток может быть перенесен на последующие годы ст. 220.1 НК РФ.  

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

О принудительном закрытии позы при маржинальной торговле на фондовом рынке

Рассматривая СЛ наткнулся тут на вопрос коллеги Foudroyant о математической формуле расчёта необходимого движения рынка для того, чтобы случился маржин-кол при торговле на заёмные средства. Вот чтоб прям в такой формулировке я этот вопрос не рассматривал (ибо собственно момент выпуска требования довнести денег на счёт, насколько я понимаю, различается у разных брокеров в зависимости от текущего УДС), но над смежным вопросом "при каком движении рынка наступит принудительное закрытие позы?" как раз недавно размышлял, изучая тему маржиналки, и оставил в своём личном блокнотике запись на этот счёт. Думаю, что по ней будет легко восстановить ход мыслей и найти ответ и на свой вопрос. А раз так, то чего б мне это не опубликовать, тем более, что условно новому обычно молчащему юзеру плюсики от тех, кому это окажется полезно, точно не помешают? Ну, а в случае нахождения какой ошибки ещё лучше, — буду благодарен за поправки.

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

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