Избранное трейдера Жека

по

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

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

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

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

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

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

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

Как инвестировать в облигации?

Как инвестировать в облигации?

 
Нет ничего плохого в том, чтобы быть «ничего — незнающим» инвестором, если Вы это осознаёте. Проблема — это когда Вы «ничего — незнающий» инвестор, а думаете, что что-то знаете. 

У. Баффет

Когда мы делаем первые шаги на рынке ценных бумаг, мы начинаем находить инструменты, которые были бы нам наиболее понятны, «ближе» к традиционным инструментам, например, как вклад в банке. По вкладу понятна процентная ставка, гарантия от АСВ и прочее, но зачастую страдает доходность, поэтому мы приходим к такому финансовому инструменту, как облигация.

1. Что такое облигация?

Облигация – это договор займа, в котором одна сторона, «Заёмщик» (Эмитент), занимает деньги под определенный процент у другой стороны, «Кредитора» (Инвестор) и гарантирует, что вернет эти деньги к концу срока договора. Эмитентом может стать не каждый, а вот инвестором может быть любой человек, у кого открыт брокерский счет с доступом на Биржу и имеет хотя бы 1 000 рублей для покупки одной облигации.



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

Риск и кредитное плечо

Смартлаб не перестает меня удивлять. Люди выворачивают наизнанку все что только могут, превращая простейшие вещи в заумь.
Еще одна тривиальная публикация. Посмотрим. что сделают из нее.

Риск и кредитное плечо

  Эффект кредитного рычага.



Риск определяется не размером кредитного плеча, а объемом позиции:

V=R/(SL*C),

где
V — объем позиции в лотах;
R — величина риска на сделку;
SL — размер ордера стоп-лосс в тиках;
C — цена тика в валюте депозита.

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

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

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

Заблуждения об инвестициях на российском рынке акций

Заблуждения об инвестициях на российском рынке акций

Очень часто люди отказываются от инвестиций на российском рынке акций из-за обывательских заблуждений. И так их инвестиции заканчиваются, даже не начавшись. Жалко, потому что без инвестиций обычный средний человек, не бизнесмен, не может вырваться из круга «работа — дом», повысить свой уровень жизни, стать свободнее. Попробуем же развеять заблуждения и страхи.



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

Крах брокера-банка. Что делать?

    Много букв. Читая смарт-лаб, вижу, что достаточно часто у людей возникает вопрос, что делать если у брокера (банк) отзывают лицензию. Расскажу внутреннюю кухню, что происходит когда назначена Временная администрация ЦБ РФ, а затем Ликвидатор АСВ.
   Сегодня рассмотрим кейс при таких условиях:
1. Вашим Брокером является кредитная организация;
2. У кредитной организации  есть брокерская лицензия;
3. У кредитной организации  есть депозитарная лицензия;
4. Субброкерская схема.
5. После решения суда банк подлежит ликвидации.
   Все мы знаем, как обстоят дела с отзывами лицензий у банков. Соответственно, при отзыве  лицензии на осуществление банковской деятельности,  автоматом аннулируются лицензии на осуществление брокерской, депозитарной и дилерской деятельности (у банка могут быть другие лицензии профессионально участника рынка ценных бумаг), все лицензии аннулируются.
   Предвестником (одним из) отзыва лицензии, является невозможность банком получить  овернайт или закрывается внутредневной лимит под залог ценных бумаг в НКО АО НРД. Считайте, что утром перед началом работы у вас во всех офисах и отделениях банка высадится десант из назначенной ЦБ РФ Временной администрации.

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

44 постулата успешной работы на финансовых рынках

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

  1. В большинстве случаев демо-счет больше вам навредит, чем поможет, вселив излишнюю уверенность в себе. Начните свой путь на рынке сразу с реальной торговли небольшим счетом. Психология торговли реального и демо-счета различается кардинально. Единственным плюсом является выработка технических навыков.
  2. Не пренебрегайте планированием. Торгуйте исключительно по заранее составленному плану, если на рынке не произошло ничего экстраординарного. Это одно из самых главных правил. Далее в некоторых пунктах будут встречаться его частные случаи.
  3. Бездумное усреднение не приводит ни к чему хорошему. Процесс усреднения должен соответствовать Вашему торговому плану.
  4. Будьте готовы к «чрезвычайно сильным движениям рынка». Не совершайте необдуманных поступков на таких движениях. Чаще всего подобные моменты воспринимаются как шанс быстро заработать. Вероятность же быстро потерять не берется в расчет.
  5. Будьте осторожны с неликвидными финансовыми инструментами. Не выделяйте на них более 20% вашего депо, естественно, принимая во внимание его объемы.
  6. В самом начале пути куда важнее суметь сохранить капитал, чем пытаться приумножить его. Не ставьте себе сразу невыполнимых планов.
  7. Верность вашей торговой стратегии можно оценить только на долгосрочном временном промежутке (более трех лет).
  8. Вкладывайте в финансовые рынки столько, сколько готовы потерять (как физически/финансово так и морально/эмоционально), однако помните, что без большого риска практически невозможно достичь успеха.
  9. Высказывания некоторых личностей могут достаточно серьезно влиять на рынок. Часто движения, вызванные под таким влиянием, являются краткосрочными и фундаментально необоснованными. Фильтруйте информацию.
  10. Глобальный тренд не меняется за 1 день, сколь бы сильное ни было движение.
  11. Диверсификация важна, но не стоит переусердствовать. Следить за множеством финансовых инструментов бывает слишком сложно, что приводит к снижению качества принимаемых вами решений.
  12. Для входа в рынок либо выхода из него всегда должна быть веская объективная причина, которую вы можете объяснить себе без эмоций.
  13. Если Вы торгуете активно, то используйте стопы. Порой самостоятельно бывает эмоционально (а также физически по времени) тяжело зафиксировать убыток тогда, когда это необходимо. Когда вы поставили стоп-лосс, не убирайте его при приближении цены к нему.
  14. Если на основе накопленного опыта Вы выработали для себя 100%-ю установку, то следуйте ей неукоснительно. К примеру, если вы решили не шортить Сбербанк (ну не получается — постоянные убытки), так не шортите же Вы Сбербанк, каким бы подходящем не казался момент! Иначе ощущение неправильно принятого решения начнет довлеть над вами сразу же после входа в позицию. Все это только звучит просто. На самом же деле, зачастую, ранее совершенные ошибки повторяются снова и снова.
  15. Если на растущем тренде рынок/инструмент находится на уровне исторического максимума, то куда больше шансов, что он продолжит идти вверх, чем уйдет в коррекцию. Вас не должна смущать «слишком высокая стоимость» инструмента, если фундаментально он привлекателен. Уже скоро текущая цена может оказаться очень дешевой.
  16. Если твердо решили покупать, и ликвидность это позволяет, то не гонитесь за микроскопическими выгодами в цене: покупайте по рынку. Тогда он точно от вас не уйдет.
  17. Зачастую внутридневная торговля на долгосрочном временном интервале не приносит сверхприбылей, однако ведет к физическому и моральному истощению.
  18. Когда вы перестаете что-либо понимать и у Вас ничего не получается, все-таки стоит занять позицию «вне рынка» (либо на это время войти в короткие ОФЗ), как бы это ни было тяжело морально.
  19. На плохих новостях покупайте, на хороших продавайте, а не наоборот. Но без фанатизма: учитесь оценивать «качество» новостей.
  20. Не воспринимайте всерьез краткосрочные инвестиционные рекомендации брокерских компаний.
  21. Не позволяйте эмоциям влиять на реализацию вашего торгового плана.
  22. Не пытайтесь как можно быстрее отыграть потери. Это приведет к потерям еще большим.
  23. Не стоит покупать/продавать в моменты затишья после бурного роста/падения рынка.
  24. Не стоит рассказывать о своих победах, а уж тем более, о будущих планах, если Вас об этом не спрашивают.
  25. Не существует разницы в торговле большими и маленькими суммами. Вас не должна пугать большая позиция, как и малая не должна вести к легкомыслию.
  26. Невозможно торговать, никогда не неся убытков. После каждой убыточной сделки/торгового дня определите, почему так произошло, и что вы сделали неправильно. При этом, убытки могут возникнуть даже тогда, когда вы все сделали правильно.
  27. Недополученная прибыль намного лучше полученных убытков. Не думайте о том, что «могло бы быть, если...». (не путать с анализом ошибок).
  28. Никогда не будьте уверены в успехе на 100%. Иначе при наступлении неблагоприятного исхода, растет риск необдуманных поступков.
  29. Никто и никогда не поведает Вам секретов и граалей рынка, однако, опыт других людей порой может быть действительно полезен.
  30. Определите для себя максимальную расчетную прибыль по инструменту, либо по итогам торгового дня. Если она достигнута, зафиксируйте ее и остановитесь. Далее внесите изменения в ваш торговый план.
  31. Самый важный из всех возможных ресурсов – информация.
  32. Ох как заезжено, но из-за важности все-таки скажу: «не торгуйте против тренда»! Не покупайте стагнирующие акции и не продавайте растущие без веских на то оснований.
  33. Помните о том, что рынки падают намного быстрее, чем растут.
  34. После фиксации прибыли, рискуйте только ее частью при входе в новую позицию.
  35. Поставьте себе глобальную цель в жизни. Постепенное движение к своей цели – залог успеха.
  36. Потенциальная прибыль должна быть минимум в 2 раза выше возможного убытка (частный случай: отношение тейк-профита к стоп-лоссу).
  37. Примите тот факт, что большинство близких вам людей не будут понимать, чем вы занимаетесь, а объяснить это будет невозможно, да и не стоит этого делать.
  38. Следите за фактами, избегайте мнений.
  39. Сначала идет движение рынка, и лишь потом вы сможете увидеть причину (если вообще сможете), которая к данному движению привела. Не думайте, что Вы способны очень сильно опередить рынок по времени, несмотря на его неэффективность.
  40. Спекулятивная торговля намного опаснее и сложнее простого инвестирования. Для 99% инвесторов стратегия «купил и держи» является лучшей из возможных.
  41. Фиксирование минимальной прибыли после долгой просадки – наиболее частая, и, при этом, одна из самых серьезных ошибок. Если далее рынок продолжит расти, то эмоционально вам будет слишком тяжело войти в позицию выше, чем вы из нее необоснованно вышли.
  42. Фундаментальный анализ всегда первичен, а технический вторичен.
  43. При отсутствии большого опыта, чаще торгуйте в лонг, чем в шорт. Исключение: это противоречит Вашему торговому плану.
  44. Учитесь отдыхать, не думайте о рынке постоянно.

 

Алексей Соловцов, Инвестиционная Палата.


10 этапов разработки торгового робота под QUIK и TSLab от Robot Scalper

Торговый робот для QUIK на LUA

К нам поступил запрос на создание многопараметрического робота, с кучей условий торговой логики и в конце с припиской: «За работу я готов оплатить 800 рублей». Как у заказчика получилась такая сумма осталось не ясно. Возможно, всё тривиально, и это просто все его доступные средства, которые остались от торговли по интуиции. А возможно человек просто не понимает какую работу нужно проделать и из чего образуется цена на торговых роботов. Но это не страшно. Мы как раз сейчас и постараемся разобраться в этом.

Итак, чтобы разработать робота нужно выполнить определенные этапы. Рассмотрим их.
  1. Нужно определиться с торговой стратегией и формализовать её (точки входа, стоп-лоссы, тейк-профиты, фильтры и т.п.);
  2. Желательно создать прототип данного робота;
  3. Проверить работоспособность стратегии и прототипа на исторических данных;
  4. Желательно провести оптимизацию стратегии и найти оптимальные значения параметров;
  5. Нужно провести анализ сделок и добавить общие фильтры на ситуации в которых робот часто показывает убытки. Главное, нельзя примерять переоптимизацию! Иначе в реальной торговли результаты будут сильно отличаться! После этого возвращаемся к пункту 4. И работаем до тех пор пока стратегия не будет универсальной или пока мы её не забракуем как непригодную. Так тоже бывает, и не редко.


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

Для ленивых трейдеров как избежать проблем со здоровьем

Последнее время на смлабе зашла речь о поддержании здоровья, но трейдеры очень ленивые и в тоже время проводят сидячий образ жизни. Рекомендую просмотр видео-текста (ставьте скорость х2 для быстроты чтения) где описано простое упражнение, не подразумевающее походы в спортзалы, но решающее ряд проблем, что возможны от сидячего образа работы.


RIH9. Природа разворота цены (микроструктура рынка, анализ "ленты" в Jatotrader)

Много слов не будет. Утро, 29 января 2019, RIH9. Первые полтора часа торгов — семь сигналов.
Вот так выглядит «лента» сделок RIH9 если ее разложить по 100 тиков на бар и посчитать интенсивности покупок и продаж, а также объемно-тиковый осциллятор (ОТО) потока объема. Цена и накопленная маркет-дельта умышленно на графике отсутствуют (чтоб не отвлекали).
RIH9. Природа разворота цены (микроструктура рынка, анализ "ленты" в Jatotrader)
Розовые пики — интенсивности продаж (тиков в секунду), зеленые — покупок. Голубая «змейка» — объемно-тиковый осциллятор (ОТО), показывает изменение направления потока объема. Сигнал на продажу (1 синий — или «разводка покупателей») появляется в случае окончания интенсивных покупок по рынку (розовый кружок на графике интенсивности) с последующим изменением направления потока объема в противоположную сторону (розовый кружок на графике ОТО), а также выход ОТО из зоны перекупленности вниз. Сигнал на покупку (2 синий — «разводка продавцов») появляется в случае окончания интенсивных продаж по рынку (зеленый кружок на графике интенсивности) с последующим изменением направления потока объема вверх (зеленый кружок на графике ОТО), а также выход ОТО из зоны перепроданности вверх. Аналогичная картина для сигналов 3-7. Подтверждением разворота наверх являются уменьшение пиков интенсивностей продаж (атак продавцов 1,2,3 розовые) и увеличение пиков интенсивностей покупок (атак покупателей 1 и 2 зеленые).

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

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