Избранные комментарии трейдера Dmitriy

по

Тоже хотел написать про процент выигрышных сделок. На самом деле этот показатель не так уж и важен. У меня он плавает в районе 40-60 %. Я изучал этот вопрос и для себя уяснил, что самое главное — это средняя прибыль и средний убыток на сделку. Я когда искал свои граали, тоже поначалу гнался за процентами выигрыша и находил системы с 90% прибыльных сделок, но зато остальные 10% сжирали всю прибыль в 0.
avatar
  • 11 ноября 2015, 09:15
  • Еще
 Вообще то одним фреймворком ничего не сделать. Допустим брокер тормозит, отдает данные которые были 30 секунд назад (например БКС этим грешит). Надо сравнивать с другими брокерами прежде чем выставлять заявки, а то понимаешь, влететь можно на бабки. Делает такое ваш FW? Врядли. И таких проблемок опытный роботостроитель вам накидает кучку. Так что самописный софт это важно, хотя и не для всех.
avatar
  • 10 ноября 2015, 17:31
  • Еще
ПBМ, моя стратегия в изменении левирджа за счет разных долей направленной позиции: фьюч + опцион + может быть какой-то кэш незадействованный. Цель: чтобы в итоге на момент окончания конкурса всё было хорошо. Считаю, что размер плеча очень важный момент, как им управлять, не заигрываясь, вот в чем вопрос.
avatar
  • 29 октября 2015, 23:35
  • Еще
Чё-то мало доходности по Si. С такими-то движениями по этому инструменту...
У меня тоже весь капитал лежит в Si. Робот всего один. За прошлый год 1000%, за этот год где-то 400%. В ЛЧИ не участвую, но если посчитать с 16 сентября, то по текущий момент мой робот заработал 7000 пунктов на 1 контракт. Это расчётные данные на истории. На реальном счёте за счёт проскальзываний в среднем где-то получилось 6000 пунктов с 16.09.2015. За это время было совершено 29 сделок, из них прибыльных — 15. Робот работает как лонг, так и в шорт и вообще всегда находится в позиции, т.е. выход из позиции означает разворот в другую сторону.
На других инструментах, на истории результат хуже, но тоже положительный. Поэтому пока держу всё только в Si, попутно рассматриваю и тестирую другие инструменты, т.к. рано или поздно лавочка на Si с такой доходностью может закрыться.
Просадки на истории до 10%, в реале не считал, но опять же за счёт проскальзываний, конечно, больше
avatar
  • 29 октября 2015, 09:47
  • Еще
AlexeyT, у меня торгуется синтетический фьючерс. Если сработала одна сделка — мне нужно совершить еще каскад как можно быстрее. В секунду 2-4 сделки в лучшем случае. Если мою первую сделку жуют по кусочкам, то там может и до 10 сделок в секунду идти (как только callbacl от T2Q придет о сделке — тут же стартует следующая). Поэтому DDE мне действительно показался тормознутым, скоро совсем от него отойду.
avatar
  • 26 октября 2015, 10:08
  • Еще
Mr. Bean, БД в памяти это еще расходы на парсинг запрсов SQL. Ну на быстрых компах это не так уж заметно, но зачем? Проще из скрипта кинуть стакан в файл
local f2 = io.open(«g:\\StakanEDZ5.txt», «w»)
f2:write(«S|12345|E»)
f2:flush()
f2:close()

к тому же скрипт в lua надо исполнять максимально быстро, он в основном потоке квика исполняется.
На самом деле мне нужен был просто сервер сообщений, кинул в него — и забыл, пришло-не пришло. Можно в БД кидать, можно через сокет — но это все требует наличия ответной части, коннекта к ней. С файлами этого нет. Быстро и сердито. А из .Net поймать файл элементарно, там есть FileSystemWatcher чтоли (давно делал, уже не помню точно как называется класс). Его можно создать, сказать — слушай эту директорию и если есть изменения — вызови мой метод. Кстати метод вызывается асинхронно, так что программа на C# делает обработку каждого инструмента отдельно в своем потоке. Я складываю стакан и котировки каждого инструмента в свою директорию. Работает очень быстро, до 500 изменений в директории в секунду. Это перекрывает скорость поставки данных из квика.
avatar
  • 25 октября 2015, 15:29
  • Еще
moroshkin.com/store/quikcs.zip
avatar
  • 25 октября 2015, 11:53
  • Еще
Деревня,… приветы… «дальше прога на дельфи 7 их забирает и кладет в базу сиквела 2010» — сиквел и сам отлично может взять текстовые данные, bcp (если MS) засасывает любой объем с фантастической скоростью, далее запросами привести к нужному виду… если убрать этот костыль — можно чуть сэкономить… но вообще — вам виднее… мне даже кажется, что автор слегка хвалится своей конструкцией — и есть повод, кстати, 2-3 сек для таких наворотов это очень неплохо… и этого хватит почти для всех… кроме Secret'а наверное, но вы же не покушаетесь на его лавры?.. %-)… а 1С — вообще легендарная программа, которые владеющие ею для чего только не приспосабливали… %-)
avatar
  • 07 октября 2015, 11:06
  • Еще
Я перепробовал кучу алгоритмов на истории. Некоторые из них тоже давали дикую профитность. Но в итоге оказывалось, что была ошибка при расчётах. Ищите ошибку у себя на тестах истории. Скорее всего смотрите будущий(следующий) бар, либо, если стратегия на минутках, то не учитываете проскальзывание.

У меня квик льёт данные в Oracle. На Oracle крутятся Job-ы, которые шерстят таблицы с котировками и являются роботами. Заявки отправляются путём вставки в оракловую таблицу с уведомлением проги на Delphi, которая тут же читает таблицу и отправляет заявки в Quik. Работает быстро, нагрузки на железо почти никакой.
Железо у Вас в принципе нормальное, мне бы почти хватило. Скорее всего у Вас как-то не разумно построена вся архитектура робота.
avatar
  • 07 октября 2015, 08:15
  • Еще
Занимаетесь фигней. IDA в руки, раздебажил квик, написал DLL, заинжектил и смотри котировки синхронно раньше чем все предложенные варианты в комментах. Если нужен .NET, то подгрузил быстренько рантайм в тот же процесс, сборку и дергай…
avatar
  • 27 августа 2015, 21:54
  • Еще
Alexand77, тогда лучше всего из Quik делать экспорт через Lua куда нибудь, в файл например (ram диск в памяти). А заявки отсылать через trans2quik.dll (пример на C# есть в сети). Файлы можно слушать через FileSystemWatcher. Сейчас у меня так и сделано. FileSystemWatcher асинхронная штука, а квик успевает записать много файлов для каждого стакана каждого инструмента. Короче, очень быстро все работает теперь. DDE это был мой первый опыт экспорта из QUIK, сейчас бы все через Lua+файлы сделал, да времени особо нет на это, есть куча других идей.
avatar
  • 27 августа 2015, 19:52
  • Еще
У вас в коде ошибка.

должно быть не

«if ((ind == 1) && (pr < min — stop_long)) ind = 0;»

а

«if ((ind == 1) && (pr < max — stop_long)) ind = 0;»
avatar
  • 15 июня 2015, 01:28
  • Еще
маркет мейкер все равно отгрызет ваш профит на мелких колебаниях одним контр трендовым выстрелом с гэпом в разы большим размахом… надо забивать на биржу — это отлично математически подкованная платформа для отъема денег. За счет технического инсайда и разности скоростей выставления заявок — все параметры известны, с того в этот лохотрон постоянно зовут новых наивных лохов — они думают что система не совершенна… но ей пофиг на их самомнение… потому как она работает постоянно в свой плюс. До наивных и жадных хомяков дойдет лишь через свой опыт, что это все разводка. Займитесь лучше проектами касательно реального бизнеса, не лезьте в эту песочницу — здесь вы будете постоянно огребать от хозяина лопаткой по голове…
....все тэги
UPDONW
Новый дизайн