Rostislav Kudryashov

Читают

User-icon
169

Записи

396

Что отличает рационализм от коммунизма и либерализма

Чтобы усвоить это, надо понять — главный антагонизм Нового времени не между капитализмом и коммунизмом-социализмом, но между либерализмом и рационализмом.
Вот пример этого непонимания.  smart-lab.ru/blog/reviews/1140762.php

Выйти из технологической отсталости опоздавшая страна может только руководствуясь понятием ОБЩЕГО БЛАГА.
Либеральный принцип от Адама Смита, что страну делает богатой сложение личных интересов индивидов, в данном случае надёжно удерживает страну в отсталости.
Принципы выхода из отсталости ни в коем случае не коммунизм, но РАЦИОНАЛИЗМ.

Вот что послужило Германии и Японии в XIX веке руководством к действию
«Национальная система политической экономии» Фридрих Лист. Первая половина книги бесплатно
royallib.com/book/list_fridrih/natsionalnaya_sistema_politicheskoy_ekonomii.html
А вот более современные обзоры
«Запрещенная экономика. Что сделало Запад богатым, а Россию бедной»
moreknig.org/dokumentalnaya-literatura/publicistika/249258-zapreschennaya-ekonomika-chto-sdelalo-zapad-bogatym-a-rossiyu-bednoy.html

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

Алготрейдинг. Графики ренко - раскрытие сокровенной тайны или сокрытие очевидной реальности?

Если кто не слышал про ренко -  вот здесь ru.wikipedia.org/wiki/Рэнко_(график)
Алготрейдинг. Графики ренко - раскрытие сокровенной тайны или сокрытие очевидной реальности?
На ренко (рэнко) графике движения цены группируются-округляются в фиксированный размер ступени-кирпича — по вертикальной оси Y.  По оси X получаются только номера кирпичей, которые охватывают разные временные отрезки — дата начала кирпича и сколько времени потребовалось на прохождение цены в пределах кирпича.

Если вы не фанаты ренко-графиков и ваш мозг включён всегда без перерывов, то сразу возникает вопрос — чем ренко лучше графика Зигзаг?



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

Алготрейдинг. На какой минимальный временной интервал можно делать ставку внутри дня?

Если играть во фьючерс на индекс РТС, то комиссия 0.03% при объёме контракта 160000 руб ( стоимость шага цены 16.85548 руб) на 04.04.2025 составит около 50 руб.
Чтобы выигрыш был больше комиссии, нужно делать ставку на такой временной интервал, где можно выиграть больше 100 руб. Т.е. надо определить, какой тайм-фрейм даёт средний за день True Range более 100 руб.
Казалось бы, нет проблем. Уже на минутках средняя за день True Range ходит в разные дни между 100 и 200 рублями. Заковыка в том, что за счёт большой сигмы (ср.кв.отклонение — изменчивость, волатильность) True Range в большом числе интервалов может оказаться много ниже 100 руб.

Так что надо выбирать временной интервал не только на среднее значение True Range для таких интервалов, но ещё и так, чтобы средняя была больше сигмы на 100 руб. Тогда правильный прогноз направления движения внутри выбранного временного интервала будет чаще вознаграждаться ещё и размером этого движения.

Минутный тайм-фрейм никак не обеспечивает желаемого соотношения средней и сигмы. Необходимое превышение средней над сигмой начинает вырисовываться только на 10-минутках и 15-минутках, да и то не всегда. Вот распределение по квантилям процентных значений True Range  (относительно Close) реальной истории 15-минуток фьючерса RTS.

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

Алготрейдинг. О волатильности и шумах цены

Различие этих двух понятий попытался определить академик трейдинга Perry J. Kaufman в книге «Trading Systems and Methods. 5th ed».
Увы, ему не удалось отделить волатильность, включающую изменение цены по тренду на интервале, от шума вокруг этого тренда.
Chapter 1. Introduction. Measuring Noise. Вот пример из его книги, дополненный моими построениями.
Алготрейдинг. О волатильности и шумах цены
Кауфман остановился в измерении шума на формуле, основанной на разностях цен. Для ряда в столбце C такие формулы дают завышенное значение «шума». Более «научная» и общепринятая разностная формула — это стандартное отклонение STDEV = 78.11896. Это отклонение от одной средней цены. Оно так велико в сравнении со столбцом B, потому что включает подъём по тренду.
Но ведь считать движение по тренду шумом — совершенно неправильно.

Для измерения ценового шума гораздо больше подходит формула средней квадратичной ошибки STEYX, которая учитывает отклонения цен от прямой линии тренда. И вполне оправдано, что средняя ошибка столбца C не намного отличается от столбца B.

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

Алготрейдинг. Почему гуру учат торговать, а не торгуют сами?

Недавно попалось «объяснение». Эти гуру якобы уже наторговали успешно в небольших масштабах, но с большой суммой их торговая стратегия (ТС) не даёт выигрыша. Поэтому они предлагают ученикам поторговать каждому с их небольшими суммами и повторить выдающийся успех учителя.
Насчёт успеха гуру в прошлой торговле — пусть, не будем придираться.
Но что их нынешние большие деньги не влезают в их ТС — позвольте!

Если толпы учеников со своими небольшими деньгами полезут торговать все по одной купленной ТС, это как раз и получатся те большие деньги, которые, как объявлено,  в эту ТС не влезают. А если от вас отбрехаются, что все ученики, следуя одной ТС, будут торговать по-разному и получать обещанный успех, — так что мешает учителю разделить свои большие деньги на малые доли и каждой из них «торговать по-разному»?
Написать уйму роботов, чтобы они торговали по-разному, — не надо выдающихся способностей.
Тут уже возникают не «смутные сомнения», а вполне очевидные выводы.

Второй вопрос, почему этим первым вопросом не задаются многочисленные покупатели успеха?

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

Алготрейдинг. Очередные чудеса и их разоблачение

Новое чудо объявлено не так давно для растущих бумаг
smart-lab.ru/blog/1121015.php
и затем даже для не очень растущих
smart-lab.ru/blog/1124855.php

Как всегда у таких чудодеев, описание алгоритма неполно и неоднозначно.
На картинке автора чуда цена продажи на Close белой свечи всегда выше покупки первой из предыдущих чёрных свеч. В реальности это не гарантировано.
Поэтому уточним. Чтобы исполнить указание из первого описания стратегии
Ha зaкpытии бeлoй cвeчи зaкpывaeм paнee oткpытыe лoнги в плюc.
т.е. чтобы закрыть в плюс ВСЕ лонги, надо закрывать позицию не на первой попавшейся белой свече, а только по цене выше самой дорогой из предыдущих покупок.
Однако, тестирование показало, что гораздо больший выигрыш будет именно при закрытии позиции на первой белой свече!
При этом не все ранее открытые лонги закрываются в плюс.

Вот так выглядит страгегия  BlackAndWhite в программе WealthLab
for (int bar = 1; bar < Bars.Count; ++bar) {
  if (IsLastPositionActive && (bar == Bars.Count-1 ||
      Close[bar] > Open[bar])) {
    while (ActivePositions.Count > 0)
      ExitAtClose (bar, ActivePositions[0]);
  } else if (bar < Bars.Count-10 && Close[bar] < Open[bar]) {
    BuyAtClose (bar);
  }
}
История торгов Сбера с 01.01.2018 по 31.12.2024 на дневках добыта с сайта

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

Алготрейдинг. Импорто-замещение своими руками


До недавнего времени я испытывал торговые стратегии в программе WealthLab. Но на днях возникла потребность проверки её результатов. Поэтому состряпал частичный аналог на C++.
Проверка показала значительное превосходство самоделки по быстродействию и полное совпадение результатов с фирменной системой — до копейки.

Вот как выглядит скрипт на C# в WealthLab
for (int bar = 1; bar != Bars.Count; ++bar) {
  if (IsLastPositionActive && (bar == Bars.Count-1 ||
      Close[bar] > Open[bar])) {
    while (ActivePositions.Count > 0)
      ExitAtClose (bar, ActivePositions[0]);
  } else if (bar < Bars.Count-10 && Close[bar] < Open[bar])
    BuyAtClose (bar);
}
и его аналог на C++
for (unsigned bar = 1; bar != Count; ++bar) {
  if (IsLastPositionActive() && (bar == Count-1 ||
      Close[bar] > Open[bar])) {
    while (ActivePositions.size() > 0)
      ExitAtClose (bar, ActivePositions.front());
  } else if (bar < Count-10 && Close[bar] < Open[bar])
    BuyAtClose (bar);
}
На всё-про-всё ушла рабочая неделя — годы уже не те.

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

Биткойн. Трамп сказал, Трамп сделал - не совсем то

«Биткойн проседает после подписания Трампом Указа о стратегическом резерве»
www.zerohedge.com/crypto/bitcoin-slides-after-trump-signs-strategic-reserve-executive-order
«But many crypto enthusiasts are a littel disappointed (and price action is reflecting that currently), as instead of acquiring crypto assets, White House Crypto and AI Czar David Sacks, a Silicon Valley venture capitalist, wrote in a post on X that the reserve will be funded exclusively with bitcoin seized in criminal and civil forfeiture cases, ensuring that taxpayers bear no financial burden...»
«Однако, крипто-фанаты немного разочарованы (и цены это отражают), т.к. вместо закупки крипты Белый дом и заправила ИИ Давид Сакс… написали, что Резерв биткойнов будет сформирован исключительно из реквизиций у криминала без затрат денег налогоплательщиков».

Памятуя прошлогоднее заявление Трампа, что он выделит триллион долларов на крипту, есть причина для разочарования.
  • обсудить на форуме:
  • bitcoin

Алготрейдинг. Как искать оптимум параметров торговой системы

Не важно, какую функцию и как оптимизировать, минимум отклонения прогноза цены от фактической или максимум счёта (вложение+выигрыш), — возможны два подхода: 1) прямой перебор (brute force) всех вариантов и 2) градиентный метод (наискорейшего спуска).
Прямой перебор может потребовать громадных вычислений, не реализуемых практически.
Градиентный метод очень зависит от выбора начальной точки поиска. При множестве локальных экстремумов и только одном глобальном, существенно отличающемся от локальных, очень велика вероятность попадания на незначительный локальный экстремум. Метод деформируемого многогранника Нелдера-Мида (Simplex), хоть и решает некоторые трудности градиентного, в принципе от него не отличается.

Промежуточные методы, такие как Монте-Карло или генетический алгоритм, хоть и повышают вероятность попадания в глобальный экстремум с меньшим объёмом счёта против прямого перебора, не дают достаточной гарантии.

Факт множественности экстремумов целевой функции можно считать вполне установленным.

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

Алготрейдинг. Скрипт Lua для выгрузки истории котировок из Quik'а

Сайт finam.ru и mfd.ru перестали быть полезными для выгрузки истории котировок.
Это скрипт
-- График должен быть открыт в Quik'е
Class = "SPBFUT" -- "CETS_MTL" "CETS"
SecId="BRK4" -- "NGJ4" "GLDRUB_TOM" "USD000UTSTOM" "SiZ3"
Intrvl = INTERVAL_H1 -- D1 -- M5
Header = "<TICKER>;<PER>;<DATE>;<TIME>;"..
  "<OPEN>;<HIGH>;<LOW>;<CLOSE>;<VOL>"
Period = "60" -- Дневки - 0, W1, MN1, H4, H2 - недопустимо

function Log (i)
  local t = DS:T(i)
  local ymd = string.format ("%04d%02d%02d", t.year, t.month, t.day)
  local hms = string.format ("%02d%02d%02d", t.hour, t.min, t.sec);
  if not (IniDt <= ymd and ymd <= FinDt) or
     not (IniTm <= hms and hms <= FinTm) then return end
  local str = string.format ("%s;%s;%s;%s;%.4f;%.4f;%.4f;%.4f;%.0f\n"
    ,SecId, Period, ymd, hms
    ,DS:O(i), DS:H(i), DS:L(i), DS:C(i), DS:V(i))
  F:write (str)
end -- Log()

function OnInit (scriptPath)
  qu = require ("QuikUtil(qu)") -- lu,qc,tu
  ScriptDir, ScriptName = lu.


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

теги блога Rostislav Kudryashov

....все тэги



UPDONW
Новый дизайн