Избранное трейдера Tema ☑️
Последние две недели на всех мировых рынках резко повысилась активность, количество биржевых данных выросло в 2-3 раза. Из-за этого у многих пользователей терминал QUIK начал безбожно тормозить и виснуть. Сервера брокеров также с трудом переваривают повышение нагрузки и наплыв клиентов, желающих что-либо купить-продать (по слухам кто-то из брокеров висел аж целую неделю))) ).
На Смарт-Лабе появилось несколько постов с советами как избавиться от тормозов. И меня сильно поразила неадекватность предлагаемых действий. Люди готовы покупать новое железо за бешеные деньги, создавать какие-то командные файлы и заниматься прочей ерундой. А нужно всего лишь включить голову и разобраться в причинах тормозов. Когда программисты разрабатывают какую-либо программу, они всегда оптимизируют ее для работы на определенном «средне статистическом» компьютере, закладывая при этом кратный запас по производительности. Если вдруг эта программа (QUIK) начинает неадекватно тормозить и виснуть на обычном современном компьютере — значит дело почти наверняка не в железе, и даже не в самой программе, а в ее конфигурации (настройках). Т.е. нам нужно правильно настроить терминал QUIK , а уже потом апгрейдить железо, менять туда-обратно версии и бухтеть на Смарт-лабе.
Подходит к концу текущий 2019 год и многие из вас уже сейчас задумываются над тем, как правильно зачесть убытки.
А может у кого-то из вас прошлый год был прибыльный, и вы сможете уже сейчас подготовить документы для сальдирования убытка прошлых лет.
Я специально для вас подготовила видео, в котором я рассказываю, как заполнить декларацию 3-НДФЛ (на примере 2018 года) в программе налоговой службы. Это удобно, быстро. Вы сами сможете все увидеть.
Если у вас будут вопросы, пишите в комментариях под видео или тут. Я постараюсь дать ответ на каждый ваш вопрос.
В видео идет описание:
В программе Lbot3D появилась реализация вычисления скользящего экстремума в конкретной стратегии при наличии позиции. Слово «конкретной» звучит потому, что этот самый экстремум можно использовать в других стратегиях из портфеля стратегий. Согласен, это нужно не всем. Скорее так: мало кому он нужен. Тем не менее, продолжу.
Допустим мы придумали стратегию на некотором активе, рассчитанную на тренд:
Покупаем на четверть портфеля. Если цена пошла против нас (пусть на 1%)- стопимся, но если в нашу сторону +1%, то в предположении, что мы тренде, выставим лимитированную заявку на покупку второй четверти на 0.5% ниже достигнутого экстремума: откат вероятен, и после того, как на откате вытряхнут часть пассажиров, (самых пугливых, самых недостойных :)), наш портфель зацепит еще несколько лотов и едем дальше, «на север». Но если первая четверть бумаг размещена в нашем портфеле на «долгосрок», то вторая четверть будет сразу же выставлена на продажу с профитом, например, в 1%.
В своё время активно пользовался. Робот для выставления стопа и тейк профита.
Как только видит открытые позиции. Выставляет стоп. Может кому надо. Пользуйтесь
Нужно заполнить только
cAccount=«7600lll» ВАШ СЧЕТ
cClassName=«SPBFUT» ЧТО ТОРГУЕТЕ
cProfit=7500 ТЕЙК ПРОФИТ
cProfShift=100 ОТСТУП ОТ ЦЕНЫ
cProfSpr=500 СПРЕД
cStopLoss=400 ЗНАЧЕНИЕ СТОПА
cSLSpr=500 СПРЕД
Файл:
PORTFOLIO_EX VFAutoStop;
DESCRIPTION VFAutoStop;
CLIENTS_LIST ALL_CLIENTS;
FIRMS_LIST ALL_FIRMS;
USE_CASE_SENSITIVE_CONSTANTS;
PROGRAM
New_Global(«CurLogLine»,1)
New_Global(«gLastPos»,CREATE_MAP ()) 'коллекция крайних позиций
ClassesList = get_classes_list()
cAccount=«7600lll»
cClassName=«SPBFUT»
cProfit=7500
cProfShift=100
cProfSpr=500
cStopLoss=400
cSLSpr=500
cLogFile=«C:\VFAutoStop.log»
FUNC WriteLog (pTitle, pMessage)
writeln(cLogFile, get_value(GET_DATETIME(), «Datetime») & " " & pTitle & " > " & pMessage)
END FUNC
func SendTrans(pTransParams)
trans_result = SEND_TRANSACTION (30, pTransParams)
'LogData(pTransParams,trans_result)
if get_value (trans_result, «RESULT»)+0.0=0 then
' WriteLog(pTransParams,get_value (trans_result, «RESULT_EX») & "|" & get_value (trans_result, «DESCRIPTION»))
WriteLog(pTransParams,trans_result)
end if
end func
Func ActiveStopOrder(pSecCode)
nOrd=Get_number_of(«STOP_ORDERS»)
result=CREATE_MAP ()
for iOrd from 1 to nOrd
asoOrder = get_item(«STOP_ORDERS», iOrd)
if get_value(asoOrder, «STATUS»)=«ACTIVE» and get_value(asoOrder, «SECCODE»)=pSecCode
result = asoOrder
end if
end for
End Func