1 (2015-03-02 17:09:10 отредактировано slkumax)

Тема: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

Итак, написав и почти превратив в человеческий собственный привод к Quik на Lua, стало понятно, что и робота с требуемыми функциями, я смогу написать сам, особенно если кто-нибудь поможет мне с грамотным "входом" в такое мероприятие.

Кратко опишу ситуацию:
1) Есть крупная программа на C++, которую писал я+ еще один человек, а в последствии только этот человек (платно естественно), в связи с событиями происходящими в Украине, этот человек больше не может уделять нужного количества времени проекту и решено было делать почти с нуля, учитывая уже все ошибки и тонкости. Программа зарегистрирована в РосПатенте.
2) Есть примеры роботов на TSLab + с кучей доп модулей которые были сделаны для TSLab сторонними программистами (тоже естественно платно), но стало понятно, что TSLAb крайне ограничен в возможностях.

Ну и теперь более подробно:
1) Есть очень чёткие алгоритмы для робота, которые тестировались, проверялись в течении 17 лет и регулярно проверяются сейчас (вручную) в основном. (кому интересен стейтмент, могу показать или выложить ссылку на сайт нашего фонда, где этот стейтмент есть)
2) Есть 100%я уверенность в том, что робот доведённый до конца, будет гарантированно иметь соотношение количества прибыльных сделок к убыточным 12 к 1. (всё это подтверждается ежедневной ручной торговлей) ((заранее говорю, рынок НЕ может измениться так, что этот робот начнёт проигрывать....никогда))
3) К сожалению так устроен человеческий организм, что  он устаёт и более трех дней подряд просто невозможно торговать, оставаясь сосредоточенным, далее приходится чаще всего делать крупные перерывы, а учитывая то, что есть еще и позиции которые работают в долгосрочной торговле, то перерывы становятся совсем долгими.
Робот бы естественно всех этих перерывов избежал бы.



Потому нужен робот.... очень нужен.

Варианты развития событий:
1) я пишу робота сам и мне будет требоваться помощь только в виде пояснений, как лучше писать или какие лучше способы использовать итд.
2) я пишу робота, совместно с кем то, мы заключаем договор о неразглашении (с юр.лицом), при этом производя либо оплаты фиксированные и обсуждаемые, либо договорившись о чётком проценте с прибыли робота. Либо договорившись о фиксированном окладе по завершению работы надо роботом.
3) кто-то пишет этого робота, но при этом подробно объясняя мне как и что он пишет, чтобы в случае если человек неожиданно "забросит" проект, чтобы я мог продолжать его полноценно. (варианты оплаты естественно тоже обсуждаются)
4) кто-то супер энтузиаст, и действительно понимает ценность проекта и пишет робота сам, не объясняя никому ничего лишнего, зато крайне быстро и с быстрыми результатами.


Теперь подробно о проекте
1) частей проекта много. При крайне качественной и быстрой работе, робота можно завершить за 3 месяца- пол года.
2) я вижу сейчас оптимальным реализацию этого робота в виде связки LUA и например C++, при этом желательно, чтобы была возможность роботу жить в дальнейшем и существовать вообще без QUIK (например подсоединяться по PLAZA 2 итд)
3) робот работает ТОЛЬКО с данными свечей. Т.е Hight, Low, Open, Close
Всё остальное робот получает уже внутри самого себя.
Соответственно, начать надо с написания модуля, который бы получал эти данные из квик в онлайне (+желательна возможность работы в оффлайне без квик)
Далее с этими данными нужно будет много работать.
Я думаю идеальным было бы еще и мочь визуально отображать на графике результаты вычислений робота....но это если реализация данной возможности не займёт много времени. По сути, роботу эта визуализация не нужна, а нужна она только для проверки робота.


В общем текста еще можно много написать.
Кому интересно, пишите.
Буду отписываться тут о том, как движется проект.

2

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

В текущий момент основной вопрос следующий, мне нужно, чтобы робот получал данные из квик и из массива всех данных создавал массивы данных, по которым он мог бы построить примерно следующие "картинки". (естественно что пока я не понимаю какими средствами можно сделать так, чтобы он эти картинки строил, но мне важно именно получение самих массивов. http://s011.radikal.ru/i316/1503/a8/b7d1c6aebd78.png
(на данной картинке намеренно скрыто всё предоставляющее особую ценность, потому "граалей" можно не искать )))
((на данной картинке скрин работы программы написанной ((и недописанной)) на C++))(((ошибок много, в том числе в дате )))

3 (2016-09-29 11:25:01 отредактировано sam063rus)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

-

4

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

Нет. Пол года это при очень плотной работе. Как таковых сроков поставить сложно естественно.

А какие пункты взаимоисключающие? Алгоритмы для робота есть очень чёткие. А вот реализация их возможна на любом языке в любом виде.

5 (2016-09-29 11:25:16 отредактировано sam063rus)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

-

6

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

sam063rus пишет:

Алгоритмы для робота есть очень чёткие. А вот реализация их возможна на любом языке в любом виде.

Вы сейчас пока что на той стадии - когда алгоритмы - это не главное. главное для вас на данный момент - начать с составления хорошо продуманной архитектуры вашей системы. далее, эту архитектуру предстоит ещё осмыслить с позиции разбиения на потоки (а тут не мало геморроя) и когда будет полная картинка, учитывающая всё это + составлена иерархия классов - тогда можно наконец подумывать над выбором языка программирования.

По большому счёту робот и система у нас далеко не сложные. Да, математики много, но в основном элементарной математики.
В принципе в 2003ем году наши роботы шикарно работали, будучи написанными на Excel. Вот только потом слишком сильно всё в квике менялось и вообще много всего слишком изменилось.

7 (2015-03-02 22:04:08 отредактировано GREEN_X5)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

slkumax пишет:

http://s011.radikal.ru/i316/1503/a8/b7d1c6aebd78.png
(на данной картинке намеренно скрыто всё предоставляющее особую ценность, потому "граалей" можно не искать )))
((на данной картинке скрин работы программы написанной ((и недописанной)) на C++))(((ошибок много, в том числе в дате )))

Действительно, не очень перспективно искать "грааль" в индикаторе ZIG-ZAG, который рисует хоть что-то полезное только когда заглядывает в будущее. )
Нанимайте за деньги. Думаю Вашего чудо-робота напишут за пару недель. Если конечно, действительно, существует внятный алгоритм и формализация опорных моделей.
Потом выбросите на вселенскую свалку идей, куда все мы нашвыряли уже сотни тысяч своих "граалей". ) Так что много программисту не обещайте. )
Если и на Квик и на Плазу (с серверами Квика вы не свяжитесь без их терминала), то наверное нужно сразу писать на си.

8

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

GREEN_X5 пишет:
slkumax пишет:

http://s011.radikal.ru/i316/1503/a8/b7d1c6aebd78.png
(на данной картинке намеренно скрыто всё предоставляющее особую ценность, потому "граалей" можно не искать )))
((на данной картинке скрин работы программы написанной ((и недописанной)) на C++))(((ошибок много, в том числе в дате )))

Действительно, не очень перспективно искать "грааль" в индикаторе ZIG-ZAG, который рисует хоть что-то полезное только когда заглядывает в будущее. )
Нанимайте за деньги. Думаю Вашего чудо-робота напишут за пару недель. Если конечно, действительно, существует внятный алгоритм и формализация опорных моделей.
Потом выбросите на вселенскую свалку идей, куда все мы нашвыряли уже сотни тысяч своих "граалей". ) Так что много программисту не обещайте. )
Если и на Квик и на Плазу (с серверами Квика вы не свяжитесь без их терминала), то наверное нужно сразу писать на си.

Детский троллинг тут не уместен. И никакого индикатора зиг заг нету.
Так что свои мысли можете оставлять при себе.

А для всех нормальных людей, если вдруг алгоритмы робота или еще что-то вызывает сомнение, могу предоставить стейтменты, которые официально можно проверить в блумберге и которые отображаются там ежемесячно.

9 (2015-03-05 12:42:54 отредактировано slkumax)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

sam063rus пишет:

что бросается в глаза:

Есть очень чёткие алгоритмы для робота, которые тестировались, проверялись в течении 17 лет и регулярно проверяются сейчас (вручную) в основном.

ну если алгоритмы такие золотые то, почему нельзя было за это время нанять целую армию программеров или, как говорится: если ты такой - то почему такой бедный?

Есть 100%я уверенность в том, что робот доведённый до конца, будет гарантированно иметь соотношение количества прибыльных сделок к убыточным 12 к 1. (всё это подтверждается ежедневной ручной торговлей) ((заранее говорю, рынок НЕ может измениться так, что этот робот начнёт проигрывать....никогда))

ручная торговля и робо - совершенно разные несравнимые вещи и уж тем более с таким соотношением.

я вижу сейчас оптимальным реализацию этого робота в виде связки LUA и например C++, при этом желательно, чтобы была возможность роботу жить в дальнейшем и существовать вообще без QUIK (например подсоединяться по PLAZA 2 итд)

одно дело писать для "связки" и другое дело с претензией на собственный терминал - код/интерфейсы/архитектура/подход  - всё будет разным.

частей проекта много. При крайне качественной и быстрой работе, робота можно завершить за 3 месяца- пол года.

-------------------
вкратце, в общем, взаимоисключающие требования/пункты + желание иметь/создать не просто робота, а с замахом на целый торговый терминал. и всё это, максимум за полгода...))))))) арка вон за 15 лет не может....))))))
-------------------
по поводу графиков - это одна большая тема. и там, как-раз в первую очередь будут проявляться различия в архитектуре: подход для построения графиков из скрипта - это один подход и совершенно другой когда графики - часть своего торгового терминала. в качестве начала - перепост с другого форума: [url]http://forum.qlua.org/topic465.html#wrapheader[/url]
в данный момент - я пишу свой аналог квиковского плагина отвечающего за графики  - но я сильно сомневаюсь, что я буду выкладывать его в общий доступ - т.к. мне пришлось всё писать с нуля самому, а продавать его за деньги - вряд ли кто-либо его купит, т.к. мне придётся включить в его стоимость всё затраченное на него мной время.


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

Про соотношение прибыльных сделок к убыточным при ручной и робо торговле- в данном случае оно не поменяется, а может только улучшиться. Когда торгует человек, он не в состоянии всегда правильно и быстро оценить одновременно приходящие разнонаправленные сигналы разной "силы". Роботу это легко и быстро.

10 (2016-09-29 11:25:25 отредактировано sam063rus)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

-

11

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

sam063rus пишет:

ну, в общем, понятно.
скажу со своей стороны - мне неинтересно развивать чужое направление - если я в силах создать собственное. поэтому, работа, как таковая - мне неинтересна. Но, если будут интересные вопросы по Вашему проекту - готов их обсуждать и что-то советовать, как впрочем, и многие находящиеся здесь другие.

Сейчас текущие вопросы следующие:
нужно выбрать язык (или смесь языков), который бы качественно работал с квиком и при этом в нём можно было достаточно адекватно работать с "объектами"
Поясню: в программу приходит только таблица сделок.
Эта таблица сделок превращается в свечи. (тут всё легко естественно)
Далее по определённому алгоритму, из набора свечей получаются движения. Причём у нас есть движения в прошлом, которые уже закончились и движение в настоящем, которое сейчас развивается. Еще при этом из этих движений по определённому алгоритму получаются движения более старших порядков.
Так вот каждое движение , это объёкт, у которого есть набор свойств, пример: продолжительность по времени, размер по проходу в пунктах, достижение целей и еще много разных. (но все эти свойства можно получить исключительно из изначальных данных)

Пример еще одного типа объектов обладающий своими свойствами это "поза". У неё тоже есть набор определённых свойств, такие как: размер, направление, цели итд. Таких поз может быть несколько. А может быть одна, но внутри которой заложено несколько частей с разными целями.

Еще один объект, это время. У него всего два свойства, реальное время и "состояние", ну т.е например "вечерка" или "первые 30 минут торгов". Эти состояния тоже фиксированы.


И таких типов объектов около 10.


А теперь главная идея. Чтобы качественно получать сигналы (даже для начала не торговые, а именно для алгоритма получения всего что требуется), нужно чтобы программа умела анализировать не только сами объекты, но и их взаимодействие.
Банальный пример взаимодействия перечисленных объектов:    Если движение больше стандартных размеров в N раз, и у нас по нему открыта плюсовая поза, при этом это движение не достигло целей, но уже наступила вечерка, то позу надо закрыть.

Мне сложно рассказать тут что-либо более подробно, так как у нас в работе уже давно используется собственная терминология и все объекты названы своими названиями и все их типы взаимодействий и влияний известны. И чтобы пояснить что-то подробнее, нужно пояснять термины и понятия тоже.


На данный момент мне кажется что оптимальным сочетанием будет:

1) основная программа, написанная на Си, которая состоит из модулей.
2) LUA скрипт, который будет из квика передавать все требуемые данные в нашу программу и от нашей программы принимать торговые сигналы, которые потом будет выполнять.

В последствии LUA скрипт можно будет заменить на что-то например для связи с PLAZA2

Аналогично как я понимаю работает QScalp (скальперский привод) и ещё некоторые программы.


Если кто-то пояснит с какой стороны подойти к этому вопросу, буду очень признателен.

Первым шагом как я понимаю должно быть написание LUA скрипта, который бы "отдавал" нам таблицу сделок в онлайне, и написание программы на Cи, которая эту таблицу бы понимала и превращала в свечи.

12 (2016-09-29 11:25:48 отредактировано sam063rus)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

-

13

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

судя по всему использовать LUA скрипт удобнее получается. По крайней мере я смотрю на все приводы скальперские и они именно его вроде используют.
А на счёт Trans2Quik  я же им могу только В Quik посылать сигналы, а из квика таблицы не могу же достать им.

14 (2016-09-29 11:25:57 отредактировано sam063rus)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

-

15

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

Идея вся в том, что для ускорения процедуры проще сделать именно отдельно программу/терминал которая принимает в себя только таблицы сделок и на выходе дает только сигналы к действиям. А далее можно применять любую связку с биржей для получения таблицы и отдачи сигналов. Таким образом на данный момент это будет QLUA+QUIK, а в дальнейшем это всё можно будет заменить на прямой канал к бирже. 
На самом деле этот канал прямой у нас есть....но .... если честно в нём пока совсем не разбирались. У  нас к этому каналу сейчас подключен отдельный терминал специальный....очень неудобный....
Да и к тому же скорость нашему роботу совсем неважна, потому достаточно пока что долгой цепочки
Программа-QLUA-QUik


Правильно ли я понимаю что на QLua графические возможности и возможности работать с создаваемыми объектами будут крайне ограничены, и потому проще именно эти функции уже выполнять на Си?

16 (2015-03-05 13:48:43 отредактировано slkumax)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

А. Еще важный момент. Управление 5ю счетами одновременно удобнее всего именно при такой схеме. Для 1го счета используется LUA для передачи сделок в QUik и получения данных для остальных счетов используются Tri tro trr или хитрый файлик с сигналами для терминала который как раз напрямую к бирже подцеплен.

17 (2016-09-29 11:26:07 отредактировано sam063rus)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

-

18 (2015-03-05 14:46:05 отредактировано slkumax)

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

Ускорение процедуры это имеется ввиду, чтобы самого робота писать не долгие годы, а уложиться хотя бы в пол года.
А роботу во время работы не нужна скорость- это не HFT робот.

А с терминалом все сложно- он привязан к одному конкретному компьютеру и ни на какой другой его просто так не поставить
Как следствие если писать сразу связку к нему, то процесс тестов усложняется и затягивается в разы.

Потому я пытаюсь сейчас откопать адекватную информацию или готовую связку qLUA и C++

19

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

slkumax,

вы говорите про получение "сделок" (своих) или "всех сделок" из QUIK ?

20

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

swerg пишет:

slkumax,

вы говорите про получение "сделок" (своих) или "всех сделок" из QUIK ?

В первую очередь "всех сделок" для построения графиков и создания свечей

Во вторую очередь уже скорее для торговой части это "сделки, заявки, стоп заявки" но это как раз не срочно.

21

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

slkumax,

я, признаться, никак не пойму суть вопроса. В чем именно у вас затруднение?

Потому как, вы уж извините, но пока читаю ветку - постоянно хочется крикнуть по Станиславскому: "Наймите уже программиста!"
Ну вот правда. В чем конкретно сейчас у вас затруднение?

22

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

slkumax пишет:

В первую очередь "всех сделок" для построения графиков и создания свечей

Если сделки нужны только для построения свечей, то можно передавать не все сделки, а сразу готовые свечи.

23

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

swerg пишет:

slkumax,

я, признаться, никак не пойму суть вопроса. В чем именно у вас затруднение?

Потому как, вы уж извините, но пока читаю ветку - постоянно хочется крикнуть по Станиславскому: "Наймите уже программиста!"
Ну вот правда. В чем конкретно сейчас у вас затруднение?

Написал Вам на почту неделю назад. Вы не ответили пока что.

24

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

rookie пишет:
slkumax пишет:

В первую очередь "всех сделок" для построения графиков и создания свечей

Если сделки нужны только для построения свечей, то можно передавать не все сделки, а сразу готовые свечи.

Чтобы можно было открывать и работать в роботе с разными таймфреймами, лучше передавать именно сделки и их в свечи превращать

25

Re: Требуется помощь (возможна оплата)....LUA робот почти с нуля.

slkumax пишет:

Чтобы можно было открывать и работать в роботе с разными таймфреймами, лучше передавать именно сделки и их в свечи превращать

Трафик большой. Можно передавать минутные свечи и на их основе строить уже другие тайм-фреймы.

Правда теряем подробную информацию по сделкам и возможность строить, например, секундные тайм-фреймы, если кому-то это нужно.