Избранное трейдера Holod_Dmitry
Привет… к сожалению да, чуда в этот раз не будет, штука заразная и неприятная. И не придет, а уже пришла (см. количество пневмоний в одесских больницах) уже как месяц назад… все как в Италии. Здесь официально заявили о начале эпидемии в конце февраля, в то время как было уже в полном разгаре в конце января (по своим пациентам видел), первый пациент в Италию прилетел из Мюнхена 9 января… поэтому и такие последствия. Делали вид, что «ложки нет».
Симптомы: основной — сухой кашель, обычно начинается параллельно с першением и болью в горле (иногда и часто просто боль в шее, типа мышечная и в мышцах шеи, полагаю по ходу лимф. узлов), легкое недомогание и типа продромных явлений, все как при гриппе. Температура 37,0-37,5 — 1-2 дня, или вообще без температуры. НО! как правило, нет ринита. Часто головная боль, заложенность ушей (сальпингит), легкие признаки синусита, но, повторю, необычно как-то, нет секреторного компонента. Есть просто отек слизистых. Далее, на 2-4 день боль по ходу трахеи и за грудиной (!), сухой кашель усиливается. С пятого дня может появиться боль в грудной клетке (уже более латерально, не по центру), затрудненное дыхание (периодами). И это вот продолжается без лечения около 15-20 дней. Потом, если осложнений нет, уходит и улучшается (субъективно) по 5% в день. Длится всего порядка месяца (от 3 до 6 недель). Если нет осложнений — то температуры нет, или гипотермия (36,0-36,3). В анализе крови аналогично: основной симптом — лимфопения (!), мало либо нормальное кол-во нейтрофилов, и повышенный С-реактивный белок. Больше ничего.
Приветствую.
Не станем углубляться в философию оптимизации своего алгоритма, и для чего нужен бектест. Могу сказать свое мнение — оптимизировать можно, но только делайте это правильно. В своей практике, бектестинг для меня играет крайне малую роль при создании алгоритма. Но все же некие аспекты и зависимости можно выделить.
Для начала хотелось бы показать как вообще это выглядет все в рамках TSLab.
Два примера — на первом рисунке дефолтно созданный алгоритм под простые индикаторы, RSI 20 поверх SMA20. Купили когда индикатор близок к 100, продали когда близок к нулю. Никаких фильтров и усложнений (так нужно для данного поста). Так же для примера показана таблица результатов под 400проходов. От 5 до 100 с шагом 5 для каждого индикатора. (тоже лишь для примера). В ней можно усмотреть что количество отрицательных результатов — довольно маленькое. (удачный пример, не более)

Решил проанализировать свою торговлю за прошедший год, с осени 2019 по осень 2020. Обычно такое делают в конце года, но тогда мне, скорее всего, будет не до этого, поэтому решил сделать это сейчас.
И внезапно обнаружил, что этот год оказался, по моим меркам, рекордно прибыльным. До этого, несмотря на увеличения счёта внутри года на 100-200%, на долгосроке все эти результаты размывались и год закрывался или в существенный убыток, или в 0, или в скромнейшие (и совершенно неприемлемые для плечевой торговли) 15-25% годовых.
В этом же году уже получаются +65%, причём это именно постепенно накопленный результат, а не следствие взятого однажды импульса.
Неужели я научился торговать?
Стал проверять это смелое предположение.
Первым делом посмотрел на эквити.
Она, как была «пьяной» и шатающейся туда-сюда по воле ветра трендов, так и осталась.
Может просто повезло и было много трендов?
Так их и раньше было много, лови — не хочу. Значит, дело и не в этом.
Простите за банальность, работа с данными начинается с их получения из внешнего источника. Мы будем получать их из CSV-файла архива котировок, скачанного с сайта Финам. Для работы с другими источниками вам надо будет немного изменить программу.
Я уже давно не работаю непосредственно с CSV, и храню все данные в БД SQLite. Поначалу я хотел написать программу чтения CSV с нуля, но выяснилось, что я уже подзабыл как это делается, однако нашелся рояль в кустах — моя старая библиотека читающая данные из CSV-файла непосредственно в программу. Ее мы и будем использовать.
Собственно, Python и ориентирован на работу с библиотеками, и не нужно знать что там внутри, важно только уметь с ними работать, а сами программы с использованием библиотек станут очень простыми.
Для начала качаем с Финам историю в формате CSV-файла следующего вида:
<TICKER>,<PER>,<DATE>,<TIME>,<OPEN>,<HIGH>,<LOW>,<CLOSE>,<VOL> SPFB.Si-12.20,1,04/05/20,10:00:00,76900.0000000,76990.0000000,76900.0000000,76990.0000000,3 SPFB.Si-12.20,1,04/05/20,10:06:00,77695.0000000,77695.0000000,77400.0000000,77400.0000000,8 SPFB.Si-12.20,1,04/05/20,10:08:00,77781.0000000,77781.0000000,77700.0000000,77750.0000000,30 SPFB.Si-12.20,1,04/05/20,10:13:00,78088.0000000,78098.0000000,78088.0000000,78098.0000000,6 SPFB.Si-12.20,1,04/05/20,10:14:00,78100.0000000,78100.0000000,78100.0000000,78100.0000000,1

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