Продолжаем тему решение задач (проблем) трейдера.
Первая зависимость выражается так: чем меньше ТФ, тем меньше время удержания позиции, а чем больше ТФ, тем больше время удержания позиции.
Вторая зависимость: время удержания позиции примерно равно паузе между сделками (трейдами).
И наконец, общую зависимость между ТФ, временем удержания и паузой можно представить формулой:
первая зависимость + вторая зависимость = улучшение эффективности торговли.
Выводы: если вы ведете активный трейдинг, торгуете в ручном режиме или используете биржевых роботов, например Octopus Trader, то нельзя торговать часами или сутками на пролет, без перерыва, особенно, если вы торгуете короткие ТФ, это приводит к «сливанию» прибыли или накапливанию убытков.
Предлагаю следующее простое решение: в зависимости от торгуемого ТФ, ограничивать время торгов и обязательно делать паузу между сделками (трейдами) — Рис. 2.
new_global(«total_net2»,0)
total_net2=total_net2+0
new_global(«cur_bar», 0)
new_global(«send_trans», 0)
new_global(«long», 0)
new_global(«trans_id», 1)
new_global(«bar_enter», 0)
new_global(«number_stop»,0)
new_global(«enter_price»,0)
new_global(«deals»,0)
new_global(«first_start»,0)
new_global(«last2»,0)
new_global(«changeBu»,0)
changeBu=changeBu+0
quant=1
servertime=GET_INFO_PARAM («SERVERTIME»)
hournow=SUBSTR(servertime,0,2)
minnow=SUBSTR(servertime,3,2)
secnow=SUBSTR(servertime,6,2)
SecInfo = GET_SECURITY_INFO("", code)
Lot = GET_VALUE (SecInfo, «LOT_SIZE»)
class=get_class(code)
market=get_market(class)
time=get_datetime()
minute=get_value(time,«MIN»)
hour=get_value(time,«HOUR»)
sec=get_value(time,«SEC»)
curtime=hour*10000+minute*100+sec
dayofweek=get_value(time,«DAYOFWEEK»)
year=get_value(time,«YEAR»)
month=get_value(time,«MONTH»)
day=get_value(time,«DAY»)
curdate=year*10000+month*100+day
TOTAL_NET=get_total_net(market,client,code)+0
CBPLPLANNED=get_CBPLPLANNED(market,client)
timeframe=0
if market&""=«micex»
lot =get_value(get_param_ex(class, code, «LOTSIZE»),«PARAM_VALUE»)+0
total_net=0+total_net'/lot
end if
line=0
string=create_map()
delete_all_items()
last= GET_PARAM (class, code, «LAST»)
bid = GET_PARAM (class, code, «BID»)
offer = GET_PARAM (class, code, «OFFER»)
error=0
open0=0
if first_start==0
if total_net!=0
enter_price=READ_LINE (path&«enter_price.txt», GET_FILE_LEN(path&«enter_price.txt»), error)
end if
first_start=1
end if
if (get_permission()+0)==1
Речь в статье пойдет о важных задачах (проблемах), с которыми сталкивается каждый трейдер, а именно: выбор активов, выбор тайм-фрейма, выбор направления торговли, момента торговли, стоп-лосс, тейк-профит и автоматизация этого процесса.
Теперь подробнее о каждой из этих задач (проблем).
1) Выбор активов
Напомню о банальных вещах, о которых все знают, но на которые можно смотреть под разными углами.
Первое, при выборе активов важно понимать, где происходит главное ценообразование. Например, если это российские акции, то место главного ценообразование — это биржа ММВБ. Значит, при торговле российскими акциями в первую очередь следует отслеживать информацию с ММВБ, иногда поглядывая на мировые фондовые индексы, типа: S&P.
Как добиться успеха в алгоритмической торговле?
С чего начать?
Сегодня в открытом доступе много информации об алгоритмической и количественной торговле. Трейдера, которого привлекает эта область, хочет синтезировать как можно больше информации, когда он только начинает. В результате новички могут быть ошеломлены «параличом анализа» и потратить много своего ценного времени на алгоритмическую торговлю, не добившись значительного прогресса. В этой статье я расскажу о том, как я подошел бы к алгоритмической торговле в качестве новичка, если бы только начинал свой путь. Эта статья окрашена личным опытом, поэтому, пожалуйста, прочитайте ее с пониманием того, что я описываю то, что работает для меня. Я не претендую на то, чтобы быть гуру по личному или профессиональному развитию, но мне удалось развить свои навыки алгоритмической торговли до такой степени, что я смог оставить свою основную работу для торговли на рынках – так что, возможно, у меня есть личный опыт и понимание, которые могут быть полезны для вас. В этой статье, я намерен предоставить вам некую «дорожную карту» для начала и достижения максимально эффективного прогресса, поделившись некоторыми практическими вещами, которые я узнал на своем пути в качестве алготрейдера.
Не затрагиваю софт кванта и железо для алготрейдинга, потому что каждому свое.
А вот вычислительных ресурсов кванту постоянно не хватает.
Вычислительные ресурсы.
Квант в команде занят изысканиями, нахождением некой альфы. Для этого требуются немалые вычислительные ресурсы. Уровень исследований напрямую от них зависит. У одиночки все очень скудно с этим, поэтому единственный вариант — некие ноу-хау, прорывная алгоритмическая оптимизация и т.д. Все то, что позволяет приблизиться к покрытию задач, которые совсем не лобовым способом могут быть поставлены хедж-фондом на локальный супер-компьютер.
Некоторый исследовательский прорыв получается достигнуть через алгоритмическую оптимизацию. Приоткрыть дверь туда, где простой обыватель не ходит.
Однако, количества ядер и памяти все время не хватает, даже если получилось алгоритмически ускорить расчеты в 1000 раз.