Избранное трейдера Aleks778
Часто вижу на форуме вопросы типа «Как написать простого робота, чтобы автоматизировать торговлю?». Несколько раз отвечал, а сегодня делать нечего и решил в одном посте соединить всё воедино, надеюсь пригодится начинающим писателям скриптов. Если коротко: не занимайтесь написанием роботов, всё что вам нужно для успешной торговли уже реализовано в TradingView: рисуете на графике области, линии тренда и прочие фаллосы. Далее создаёте уведомление, например на выход из области или пересечение линии тренда или на закрытие выше линии или на любое другое событие которых в TV огромное количество. TV позволяет на уведомление повесить webhook, то есть может «дёргать» внешний скрипт. Арендуете сервер с внешним IP адресом (далее IP_сервера) и пишете элементарный скрипт, который делает «продать всё по рынку» или «продать всё по цене, которую передал TV» и т. д. Таким образом вся логика у Вас будет на графике, любые сценарии программируются за 5 минут наглядно рисованием.
А теперь скрипты и примеры их использования:
Webhook скрипт на PHP для фонда (на примере Тинькова): https://telegra.ph/webhookListenerTinokphp-11-04
Для него требуется установить в папку со скриптом с помощью composer пакет github.com/jamesRUS52/tinkoff-invest, запуск скрипта на сервере из консоли командой php -S IP_сервера:80 ./webhookListenerTinok.php
Замечание: в TIAccountId можно вписать идентификатор нужного счёта если их несколько (например брокерский и ИИС), lot нужно указывать только для валютных пар.
Свечные формации — первое что я исследовал в своё время.
Первое с чего я начал свой путь в программирование и алготрейдинг – была программа для автоматического поиска паттернов. Я делал это публично и весело – как люблю и сейчас))
Раз, два, три, ну и т.д. (2014 год! С ума сойти!)
Дата-майнинг, машинлёрнинг. Мне нравились эти слова в то время и идея заставить программу автоматически находить прибыльные закономерности – охренительно вкусная!
И знаете что?
Вот эти классические паттерны с картинки:
Рис. 1. Не достоверная информация
С тех пор я написал уже с десяток различных самообучающихся / полуавтоматическиобучающихся и других «магически» обучающихся приблуд. Последняя вот эта: https://youtu.be/4niRyKY1Ho8
import sqlite3 as sql from scipy.stats import logistic import math import numpy as np import numpy.random as rnd import matplotlib.pyplot as plt from sklearn.neural_network import MLPRegressor sdata =[] sql1= "select ticker, date, open, high, low, close, vol \ from Hist_1m where ticker_id=1 order by Date;" con=sql.connect('C:/Users/ubase/Documents/StockDB/StockDB21.sqlite') cur=con.cursor() cur.execute(sql1) sdata=cur.fetchall() con.commit() con.close() Ldata = len(sdata) N = 8000 # Количество сделок ld = 5 #Продолжительность сделки NNinterval = 20 # Количество входов NN # Генерация случайных чисел rng = rnd.default_rng() rm=rng.integers(0, Ldata, N ) class Candle: tr = 0 dt = 1 o = 2 h = 3 l = 4 c = 5 v = 6 cl = Candle DataC =[sdata[i][cl.c] for i in range(0,Ldata)] # sigmoid линейность до 0.5 def sigmoidnorm(x, alfa = 0.9, xmin = -1.3, xmax = 1.3): return (xmax - xmin)*((1 / (1 + math.exp(-x*2.0*alfa))) - 1.0) + xmax x = [0.002 * i - 3 for i in range(0,3000)] y = [sigmoidnorm(x[i]) for i in range(len(x))] plt.plot(x,y) plt.grid() plt.show() # формируем сделки. def DealsGenL(rm,ld): #Lm = len(rm) ix = [] x = [] pr = [] for i in range(0,N): if rm[i] + ld < Ldata and rm[i] - NNinterval - 1 > 0: delta = (sdata[rm[i]+ld][cl.c] - sdata[rm[i]][cl.c])/sdata[rm[i]+ld][cl.c]*100 x0 = [sigmoidnorm((sdata[rm[i] - j][cl.c] - sdata[rm[i]][cl.c])/sdata[rm[i]][cl.c]*100) \ for j in range(0, NNinterval)] ix.append(rm[i]) x.append(x0) pr.append(delta) return ix, x, pr Ix, X, Pr = DealsGenL(rm,ld) Ib = 0 Ie = 100 plt.plot(X) plt.legend() plt.grid() plt.show() plt.plot(Pr, label = 'Prof') plt.legend() plt.grid() plt.show() regr = MLPRegressor(hidden_layer_sizes = [30,20,15,10,5], \ max_iter=500, activation = 'tanh') regr.fit(X, Pr) Out = regr.predict(X) plt.plot(Pr, Out, '.') plt.grid() plt.show()И вот результат прогнозирования:
Пишу редко, но все чаще получаю позитивный и рациональный feedback на свои посты и это не может не радовать...)) Сегодня 6 лет как я начал «болеть» трейдингом и в конечном счете это стало моей профессией и делом моей жизни и я решил тезисно написать, что я понял для себя за эти годы и к чему пришел:
✅Быть трейдером — это про гены и талант! Научить тут ничему нельзя, либо у тебя хватит рвения научиться всему самому, либо тебя сольют в первые 2-3 года максимум...90% — это зеваки, игроманы и халявщики… Остальные 10% — такие же, но знающие и зарабатывающие на этом!
✅Тех анализ со всеми его рисунками, фигурами, расширениями и «газообразованиями» не работает… Вернее работает — но только в теории))) Проблема не в самом тех анале, а в человеческой сути — люди ленятся, косячут, по разному смотрят на рынок и отсюда «каждый в этом мутной воде видит разную рыбу»!
✅Вообще все эти понятия: тех анализ, «кукол» и даже слова типа тренда — это все навязано ИНДУСТРИЕЙ, которая нацелена на откачку денег...Любые общедоступные понятия и информация — это матрица для благодатной паствы