alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 03, 2013, 05:09:01 PM Last edit: April 07, 2013, 05:23:45 PM by alpet |
|
До недавнего времени программа позволяла торговать только фьючерсы, и только на бирже FORTS. Теперь реализован протокол MtGox, пускай с минимальной функциональность, и вероятно отчасти программа совместима так-же с биржей ICBIT, а протокол BTC-E будет проработан несколько позже. Соответственно требуется альфа-тестирование, по мере дальнейшей разработки. Дистрибутив пока не стал делать, выложил архив который нужно распаковать в корень диска C: (чтобы получилось C:\TStudio), или любое другое место и тогда придется в tstudio.conf поправить путь. Чтобы из программы можно было торговать, нужно задать API ключ и Secret в файле mtapi.conf. Все конфигурационные файлы хранятся в TStudio\conf и редактируются блокнотом. Рекомендую экспериментировать с отдельного аккаунта MtGox, на минимальных деньгах. Когда биржа перегружена, программа может сбоить весьма и весьма часто, вплоть до полного вылета. В такие моменты бесполезно пытаться торговать из неё, ибо теряются заявки из-за внутренних таймаутов. В продукте Trade Studio разделяется моя интеллектуальная собственность (библиотека MtGoxBTI.TDR) и корпоративная - собственно сама оболочка. В составе MtGoxBTI используется библиотека sgcWebSockets, в которую мной были внесены изменения для работы Socket.IO через IndySSL (купил исходники для этого). Для своей библиотеки я в обозримом времени выложу большую часть исходного кода, при том что часть обработки протокола и без того открытая в скрипте MtGoxBTI.lua. Сама программа останется вероятно закрытой надолго. В любом случае все распространяется бесплатно, по принципу AS IS и без каких-либо гарантий. Помочь разработке можно будет донейтами на кошельки компании и мой личный. Документации на программу ещё нет, поэтому некоторую информацию можно найти в ветке форума старой версии программы. Стаканы сейчас заполняются только в режиме обновления, поэтому медленному заполнению их котировками не стоит удивляться (получение full depth в проекте). Согласно текущим настройкам заявки агреггируются, чтобы цена имела всего два знака после запятой - таким образом избыточность маленького шага цены MtGox хотя-бы отчасти компенсируется. Все вопросы пожалуйста задавайте сюда, атаковать ЛС бессмысленно. [edited] Важно: Для работы программы необходимо установить OpenSSL Win32, например версии 1.0.1e
|
|
|
|
|
|
|
|
In order to achieve higher forum ranks, you need both activity points and merit points.
|
|
|
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 04, 2013, 04:26:05 PM |
|
Файлы программы были обновлены, теперь содержимое стаканов сбрасывается при переподключении (а они к сожалению довольно частые). В первой сборке происходило некрасивое перемешивание бидов и асков, теперь-же такого практически не происходит. Для тех кто не разобрался с запуском: надо запустить файл C:\Trade\TStudio\bin\tstudio.exe В случае каких-либо проблем с запуском, просьба сообщить. Уже известны случаи, когда программа не запускается в Windows XP. Для ознакомления с интерфейсом рекомендую вводный ролик, который снимался ещё во времена работы исключительно с FORTS. Сообщения программы можно мониторить в консоли, потоки которой переключаются из меню: Например в консоли 1 выводятся сообщения от библиотеки MtGoxBTI, в частности дампятся все сделки биржи:
|
|
|
|
avral
|
|
April 05, 2013, 05:13:50 AM |
|
Ни в чем не обвиняю, просто интересно на что ругается?
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 05, 2013, 06:01:01 AM Last edit: April 05, 2013, 06:14:21 AM by alpet |
|
Ни в чем не обвиняю, просто интересно на что ругается?
Действительно интересно, у меня стоит Microsoft Security Essentials и никаких жалоб нет. В 10:00 обновил архив, устранены некоторые проблемы с запуском под Windows XP. На tstudio.exe ругнулся один Clam.AV, так-же и на библиотеку MtGoxBTI что наверное можно списать на ошибку эвристического анализа. Но на всякий случай стоит запускать программу с ограниченными правами пользователя, и наблюдать за сетевой активностью (по идее только к mtgox должны подключения инициироваться). Если стоит достаточно продвинутый антивирус, он должен подозрительную деятельность выявить: попытка чего-либо с автозагрузкой сделать, модификация исполняемых файлов.
|
|
|
|
avral
|
|
April 05, 2013, 01:36:36 PM |
|
Вопрос: только эти строки нужно править в mtapi.conf
private= secret=
или же еще нужно править вот это в connections.conf
Login= Password= ? Или еще что то нужно сделать, а то никак не стартует.
|
|
|
|
avral
|
|
April 06, 2013, 07:08:12 AM |
|
Апну тему, актуально
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 06, 2013, 08:07:59 AM Last edit: April 06, 2013, 09:03:20 AM by alpet |
|
Вопрос: только эти строки нужно править в mtapi.conf
private= secret=
Пока только эти. Логин и пароль в дальнейшем будут расшифровывать ключ и секрет, а то меня не радует когда такие вещи открытым текстом хранятся. В любом случае стоит помнить, если злоумышленник имеет доступ к вашей системе, он не только файл может вытащить, но и кейлоггер поставить скрытый. Если программа продолжит вылетать, закинь содержимое папки logs архивом мне на . API ключ при этом можно забанить, чтобы не было подозрений (подписанные сообщения выводятся в лог). Так-же от вылетов могут возникать отчеты в папке bin, вроде bugreport.txt
|
|
|
|
avral
|
|
April 06, 2013, 11:09:50 AM Last edit: April 06, 2013, 11:58:31 AM by avral |
|
Вот такое получается: пробовал с двух компьютеров под win7 32, и под win7 64 тоже самое.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 06, 2013, 01:49:00 PM |
|
Вот такое получается: пробовал с двух компьютеров под win7 32, и под win7 64 тоже самое.
В логах могут быть подробности. Ошибки с filemapping по идее должны обрабатываться. Как оказалось с самой последней сборкой, я по забывчивости расшарил свой API ключ. Теперь все права касающиеся торговли с него убраны, рекомендую использовать собственные ключи. Несколько заявок выставил какой-то анонимус, даже удивился поначалу что-то это. Видимо у кого-то запускается программа ) Окно с позициями по деньгам и валютным парам можно открыть через меню View->Show Instruments.
|
|
|
|
avral
|
|
April 06, 2013, 02:49:58 PM |
|
Я лог то могу почитать, но я не программист.
[keys] TradeKey= [TStudio] private= secret=
Две нижние строчки я правлю под себя ключами с моего аккаунта с гокса, скажите пожалуйста что еще нужно сделать что бы программа запустилась? А то она при запуске сразу же вылетает. Может еще какой файл править кроме mtapi.conf?
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 06, 2013, 07:40:58 PM |
|
avralМне из лога собственно нужен стек вызовов и сообщение об ошибке. Как правило оно пишется в bin\bugreport.txt и дублируется в логах программы в logs Убедитесь, что загрузили самый свежий архив с программой, в последнем содержимое файла mtapi.conf уже определено: [keys] TradeKey=TStudio [TStudio] private=20121b7b-e723-4bab-a90e-a5153a55cd71 secret=JQsANKVC+XC1ZmRa2hnO7wRTPA0OD7AA4PQSnh67m6r14LeJ70s0LrwEcHQzr5K6VoQNcNYTBTaCaDjq+L9btw==
Это мой старый ключ, вам соответственно нужно лишь заменить его своим ключом.
|
|
|
|
avral
|
|
April 07, 2013, 07:43:38 AM |
|
[keys] TradeKey=TStudio Тут заполняю вместо TStudio данные с пункт 1[TStudio] private=20121b7b-e723-4bab-a90e-a5153a55cd71 Тут место ваших данных заполняю пнктом 2 с картинкиsecret=JQsANKVC+XC1ZmRa2hnO7wRTPA0OD7AA4PQSnh67m6r14LeJ70s0LrwEcHQzr5K6VoQNcNYTBTaCaDjq+L9btw== Тут пункт 3 с картинкиТак?
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 07, 2013, 08:37:34 AM |
|
[keys] TradeKey=TStudio Тут заполняю вместо TStudio данные с пункт 1 [TStudio] private=20121b7b-e723-4bab-a90e-a5153a55cd71 Тут место ваших данных заполняю пнктом 2 с картинки secret=JQsANKVC+XC1ZmRa2hnO7wRTPA0OD7AA4PQSnh67m6r14LeJ70s0LrwEcHQzr5K6VoQNcNYTBTaCaDjq+L9btw== Тут пункт 3 с картинки Так?
В случае TradeKey=TStudio никакой связи с MtGox нет, это название секции из которой считывается private и secret. Можно сделать множество секций с разными ключами, между которыми переключаться: [keys] TradeKey=key1 [key1] private=20121b7b-e723-4bab-a90e-a5153a55cd71 [color=red]Тут место ваших данных заполняю пнктом 2 с картинки[/color] secret=JQsANKVC+XC1ZmRa2hnO7wRTPA0OD7AA4PQSnh67m6r14LeJ70s0LrwEcHQzr5K6VoQNcNYTBTaCaDjq+L9btw== [color=red] Тут пункт 3 с картинки[/color] [key2] private=************ secret=*******************
А в остальном все верно, если у вас только один ключ - достаточно изменить значение private и secret, ничего более не трогая.
|
|
|
|
avral
|
|
April 07, 2013, 02:35:15 PM Last edit: April 07, 2013, 05:48:28 PM by avral |
|
Не стартует .
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 07, 2013, 05:21:23 PM |
|
avralВсе понятно, этот бы лог раньше ещё увидеть Забыл указать, что программе требуется OpenSSL Win32, я тестирование проводил с версией 1.0.1e
|
|
|
|
avral
|
|
April 07, 2013, 06:15:57 PM |
|
Да все заработало, завтра буду разбираться что к чему, спасибо за помощь.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
April 09, 2013, 06:16:07 AM |
|
Просьба отписаться всем, у кого программа не запускается или не позволяет выставлять заявки (в нормальное время конечно, когда биржа не тормозит). Напомню, что для включения режима активной торговли надо установить флажок "Allow orders" в меню "Trading". Для поддержки стопов/тейков осталось добавить перехват собственных сделок (из тиков), что я думаю завершить к следующей сборке.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
May 07, 2013, 07:11:11 AM |
|
Сделал сборку бета версии, можно загружать и распаковывать аналогично альфе. Обязательно замените ключ и секрет в mtapi.conf, можно на самый бесправный, иначе программа будет постоянно ошибки выдавать в консоль (с характерным звуком). К сожалению ограничения API MtGox оказались критическими и сделать хоть что-то реалтаймовое пока не получится, даже с стопами есть проблемы из-за слишком долгого получения сделок. В настоящее время буду переделывать программу под работу с ICBIT, поскольку там намного меньше тормозов и больше возможностей.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
July 09, 2013, 09:26:20 AM Last edit: July 10, 2013, 08:42:30 AM by alpet |
|
Предварительная версия программы для ICBIT выложена для тестирования. Для работы с программой необходимо ввести при первом запуске API-ключ и id пользователя. В дальнейшем каждый понедельник ключ нужно будет обновлять в файле icbit.conf, для которого создается ярлык (Auth. configuration). Замечу что сейчас ключи авторизации попадают в логи, поэтому перед отправкой мне для изучения проблем эти логи нужно будет очищать или сразу менять ключ на новый.
|
|
|
|
anonymous_acc
|
|
July 15, 2013, 10:18:28 AM |
|
Пока не opensource никому не надо, какие гарантии что это не троянец?
|
BTC: 1HRcwjxG2H5vSnNo5ZbGqMxRPFWJk6dwW9
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
July 15, 2013, 11:32:05 AM |
|
Пока не opensource никому не надо, какие гарантии что это не троянец?
Как недавно слышал в Crysis, кому нужны гарантии - покупает тостер. Весь исходный код я уж точно не смогу выложить, т.к. он не мне принадлежит (в всяком случае сама оболочка). С другой стороны, опытные программисты могут косвенно оценить объем вложенного труда, и понять что ради разовой троянской атаки никто так не выкладывается. У программы есть история, это не первая публичная раздача AS IS.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
July 16, 2013, 07:06:48 AM |
|
Обновил дистрибутив, в связи с исполнением контракта BUN3. Так-же изменилась сборка оболочки (теперь 1.7.4945), подлечил мелкий баг. В принципе можно самостоятельно отредактировать словарь инструментов в файле instrDict.conf, заменив описание для BUN3 следующим: [BTC/USD-8.13] Alias=BTC-MX Board=ICBIT_1 ShortName=BUQ3 IsFuture=1 LotSize=10 Decimals=2 MinStep=1 PriceCoef=100 VolumeDecimals=0 VolumeCoef=1 TradeMoney=100 Flags=$1000
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
July 29, 2013, 10:22:58 AM |
|
Обновил дистрибутив, были исправлены небольшие проблемы с автоматической торговлей. Теперь можно пробовать запускать тестовый сценарий котировщика grid_maker на боковом рынке (позиция набирается против движения). С настройками по умолчанию будут выставлять 5 заявок по 1 контракту в бидах и асках, через шаг цены 0.1 USD.
|
|
|
|
hazarun
Legendary
Offline
Activity: 2128
Merit: 1019
|
|
July 29, 2013, 02:30:00 PM |
|
Пока не opensource никому не надо, какие гарантии что это не троянец?
Ну да, примерно так. Даже если и не троянец, программа делает ту работу, что задумал ее автор. Исправить ее под себя - без исходников не получится. Потому такая вещь - мало кому нужна. Лучше проще, но с исходниками. (желательно на Си Шарп )
|
|
|
|
hazarun
Legendary
Offline
Activity: 2128
Merit: 1019
|
|
July 29, 2013, 02:34:50 PM |
|
Пока не opensource никому не надо, какие гарантии что это не троянец?
С другой стороны, опытные программисты могут косвенно оценить объем вложенного труда, и понять что ради разовой троянской атаки никто так не выкладывается. У программы есть история, это не первая публичная раздача AS IS. Опытным программистам, проще написать своего робота, что будет решать ИХ задачи. А не заморачиваться потерей времени на разборках с чужой недоделкой. А неопытным - ВЭБ интерфейса хватает, во многих случаях. Исходники людям нужны, сами и допилят.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
July 29, 2013, 04:55:59 PM |
|
Опытным программистам, проще написать своего робота, что будет решать ИХ задачи. А не заморачиваться потерей времени на разборках с чужой недоделкой. А неопытным - ВЭБ интерфейса хватает, во многих случаях.
Исходники людям нужны, сами и допилят.
Конечно я не могу утверждать, что мое решение достаточно универсальное, чтобы любые задачи решать. Но в защиту скажу, что функционала для упрощенного создания роботов уже немало: 1. Cкриптовая система для автоматической торговли, на языке Lua. Используется так-же для script orders, например запланированных заявок. 2. Скриптовая система защиты позиций, в частности реализованы гибкие трейлинг-стопы. 3. Поддержка COM-интерфейсов для торговли из внешней программы. По большей части API ещё предстоит развивать, но даже с тем что есть уже наличествуют мегабайты исходного кода. Сторонний программист будет очень долго разбираться с этим, что уж там говорить про адаптацию "под себя" и отладку получившегося продукта. То что вы говорите про опытных программистов, вроде-бы и верно. Но когда разработчик МТС начинает вести партнерство с таким программистом, затраты на поддержку легко влетают в миллионы рублей/год. А случаев когда опытный программист сам создает качественную МТС, достаточно мало. Поэтому большинство трейдеров используют те или иные конструкторы, или торговые терминалы, причем зачастую стоящие немалых денег (Trade Station к примеру). Серьёзные продукты в исходных кодах опять-же чрезвычайное редкое исключение.
|
|
|
|
Fireball
|
|
August 02, 2013, 11:42:06 AM |
|
Опытным программистам, проще написать своего робота, что будет решать ИХ задачи. А не заморачиваться потерей времени на разборках с чужой недоделкой. А неопытным - ВЭБ интерфейса хватает, во многих случаях.
Исходники людям нужны, сами и допилят.
Конечно я не могу утверждать, что мое решение достаточно универсальное, чтобы любые задачи решать. Но в защиту скажу, что функционала для упрощенного создания роботов уже немало: 1. Cкриптовая система для автоматической торговли, на языке Lua. Используется так-же для script orders, например запланированных заявок. 2. Скриптовая система защиты позиций, в частности реализованы гибкие трейлинг-стопы. 3. Поддержка COM-интерфейсов для торговли из внешней программы. По большей части API ещё предстоит развивать, но даже с тем что есть уже наличествуют мегабайты исходного кода. Сторонний программист будет очень долго разбираться с этим, что уж там говорить про адаптацию "под себя" и отладку получившегося продукта. То что вы говорите про опытных программистов, вроде-бы и верно. Но когда разработчик МТС начинает вести партнерство с таким программистом, затраты на поддержку легко влетают в миллионы рублей/год. А случаев когда опытный программист сам создает качественную МТС, достаточно мало. Поэтому большинство трейдеров используют те или иные конструкторы, или торговые терминалы, причем зачастую стоящие немалых денег (Trade Station к примеру). Серьёзные продукты в исходных кодах опять-же чрезвычайное редкое исключение. Хороший торговый терминал очень редко бывает с открытыми исходными кодами, к сожалению. По-факту, их просто нет. Что касается троянов, я за спиной у alpet'а не стоял, когда он выкладывал этот архив, но тратить пол-года на то, чтобы добавить поддержку фьючерсов, сказать нам, какие изменения с точки зрения профессионального трейдера нужны в API, тестировать, находить баги и прочее - я думаю, это уж слишком сложно для того, чтобы просто срубить апи-ключи к бирже, которые к тому же пока у всех временные, до первого log off-а.
|
|
|
|
[Tycho]
|
|
August 02, 2013, 02:06:26 PM |
|
Пока не opensource никому не надо, какие гарантии что это не троянец? Потому такая вещь - мало кому нужна. Лучше проще, но с исходниками. Надо же, народ до сих пор не отучился говорить за всех :) Автор старался, делал работу и поделился ей с вами бесплатно, так что заслужил хотя бы уважение, пока не доказано обратное. Торговый клиент много кому нужен, даже без возможности править исходный код. Трейдеры в реальном мире как раз пользуются всякими терминалами. Да, везде есть свои риски, но большинство пользователей, даже имея исходный код, не пытаются его проверить на наличие "закладок". * Сам я к терминалу этому отношения не имею и его истинность не гарантирую, просто высказал мнение.
|
Welcome to my bitcoin mining pool: https://deepbit.net - Both payment schemes (including PPS), instant payout, no invalid blocks ! ICBIT Trading platform : USD/BTC futures trading, Bitcoin difficulty futures ( NEW!). Third year in bitcoin business.
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
August 16, 2013, 07:23:13 AM |
|
В связи с добавлением/экспирацией фьючерсных контрактов, дистрибутив был обновлен.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
August 23, 2013, 12:36:12 PM |
|
Сейчас ещё раз обновил дистрибутив, в связи с небольшими исправлениями. Так-же расширил набор доступных для торговли инструментов.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
August 23, 2013, 01:14:49 PM |
|
где его найти уважаемый?
Ссылка на дистрибутив, не меняется с 9 июля. Извините, если не очевидно )
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
August 31, 2013, 10:58:09 AM Last edit: August 31, 2013, 11:12:55 AM by alpet |
|
Готова первая сборка для btc-e.com, пока ещё с очень ограниченными возможностями. Дистрибутив можно скачать здесь. По умолчанию программа работает в просмотровом режиме, для торговли надо отредактировать файл btc-e.conf (ярлык на него создается в меню "Пуск"), записав API-key и secret голым текстом. Относительно работы с ICBIT не стоит удивляться сильно уменьшившейся производительности, все-таки запросное API против потокового слабовато. Видимо этот вопрос будет решаться через десятки параллельных ниток, постоянно запрашивающих публичные данные и заявки/сделки, а значит трафик будет очень заметный... но иначе остается мириться с задержками. Во время минимальной нагрузки на облако btc-e заявки должны выставляться меньше чем за секунду. Отработка торгового API в моей программе реализуется сценариями на Lua, в частности можно посмотреть как это сделано в icbit.lua и btc-e.lua (папка plugins). Там в случае чего можно проводить оптимизацию, отключив скажем не нужные для торговли инструменты или изменив периодику запроса.
|
|
|
|
alpet (OP)
Legendary
Offline
Activity: 1912
Merit: 1020
|
|
September 04, 2013, 07:59:55 AM Last edit: September 05, 2013, 07:46:47 AM by alpet |
|
Обновил дистрибутив бета-версии для btc-e. Теперь запрос публичных данных осуществляется фоновыми потоками и в меньшей степени тормозит транзакции. Платой за ускорение стал заметный избыточный трафик (тысячи процентов), что к сожалению не получиться улучшить без уменьшения частоты запросов данных. Кстати сама частота запросов прекрасно регулируется из сценария btc-e.lua, через параметр функции interloop_message в миллисекундах. Одной из особенных фишек программы, является возможность установления произвольного числа подключений, в т.ч. к различным биржам: На данном скриншоте программа подключилась к биржам BTC-E и ICBIT, и после некоторых доработок я уже смогу реализовать котировального бота (частный случай арбитража) для фьючерса на лайткоин.
|
|
|
|
|
|
|