вторник, 20 апреля 2010 г.

Betfair Free API. Часть 2

Прежде чем начать разговор о написании софта для биржи Batfair, я хотел бы обратить внимание будущих миллионеров на  страницу посвященную документации по Betfair Free API. На странице выложено множество примеров программирования на нескольких языках, а именно Visual Basic, Java, PHP, C#.  В принципе этих примеров уже должно быть достаточно для самостоятельного изучения предметной области. Также на сайте, кроме всего прочего доступен для свободного скачивания самый главный документ - Betfair Sports Exchange API Reference Manual.  Полное руководство по всем функциям входящим в состав Betfair API, а такж основные принципы работы с API.  Документ доступен как в виде PDF, так и виде онлайн документации.

В этом месте я уже начинаю слышать возмущенные голоса насчет того, что "там же ж" все написано по-английски! На что я отвечу, что если вы в школе/институте вместо занятий пили пиво на лавочке, то ваш удел это ставки в Марафоне на реал пэ адин и продолжение распития того же пива на той же лавочке. Без английского языка в программировании Betfair нехрен делать. ИМХО. Владея только русским разобраться будет очень сложно.

Продолжим. Все эти примеры это конечно хорошо, но это все слишком простые примеры. Было бы неплохо увидеть полностью законченный бот "в натуре". Ну что ж, хотя исходники  своего полностью готового бота ни один игрок вам не покажет (он лучше перережет себе вены) выход все равно есть.

Живет в Британии такой чувак Colin Magee. Так вот этот дядя написал и издал пока единственную (!) книгу о написании программного обеспечения для работы с биржей Betfair посредством доступа к Free API. Книга называется Automatic Exchange Betting. (Если кому известны еще бумажные издания по этой теме буду благодарен за сцылку)

  В книге автор проходит весь путь написания собственного бота. Начиная с настройки Linux, подготовки среды программирования, загрузки нужных библиотек, программирования собственных стратегий и заканчивая записью истории коэффициентов в базу данных для дальнейшего анализа. Для программирования выбран скриптовый язык Perl. Так что, если кто программировал на этом языке, то вам повезло. Если кто кодил на PHP, то повезло меньше, хотя весь ход легко поддается портированию с Perl на PHP. Если же со скриптовыми языками вы никогда не сталкивались, то это отличный повод заняться изучением Perl  :-)

Книга буквально напичкана примерами реализации доступа к различным функциям Free API применительно к ставкам на скачки. Примеров использования очень много. Буквально каждый вызов детально разжевывается.

Объем книги 360 страниц, твердый переплет. Превосходная полиграфия и качество бумаги. Кароче я купил эту книгу не задумываясь, и о потраченных 45 фунтах нисколько не жалею. Да, книга на английском. А никто не обещал что будет легко :-)

В следующей части, опишу простенький бот для автоматического логина на биржу и запроса баланса. Примеры, думаю писать на Java и также дублировать на PHP.

26 комментариев:

  1. Скачать книженцию http://files.mail.ru/IRC7N0
    Мог бы и спросить, перед тем как покупать.

    ОтветитьУдалить
  2. P.S. а зачем писать примеры, если они есть на самом BetFair?

    ОтветитьУдалить
  3. 1. Как я писал ранее между бумажной версией и электронной я, практически всегда, выбираю бумажную. Не знаю, как другие, а я могу себе позволить потратить небольшую сумму на нужную в хозяйстве вещь :-)

    2. Насчет написания примеров. Я имел ввиду пошаговую инструкцию построения бота со своими комментариями. Буду только рад, если никому это не надо, и мне не придется тратить свое время на постукивание по клавишам :-)

    ОтветитьУдалить
  4. 1. Та не вопрос, как мне так код проще копировать с электронной версии ;-)
    2. Давай лучше какую-нить стратежку замути "революционную" - будет интересно пообсуждать. А реализовать уже проще. Кстати, зачем писать своего бота, если вокруг полно готовых?

    ОтветитьУдалить
  5. 1. Покупатель книги имеет доступ к всем исходникам.

    2. Давай мутить, я только за :-) Что ты имеешь ввиду под готовыми ботами ? Fairbot ?

    ОтветитьУдалить
  6. 1. Не знал (вернее забыл ;-)
    2. Ну, FairBot это даже не бот - игрушка какая-то. Никак не могу понять почему все в рунете от него кипятком. BetAngel например (это если тыкальная стратегия), или я вот MarketFeeder пользую - триггерок написал и свалил из дома.

    ОтветитьУдалить
  7. Ну вот, давай твой триггерок и обсудим. Поразмышляем как увеличить доходность и уменьшить расходную часть.

    ОтветитьУдалить
  8. Ну, прямо сейчас я тестирую любезно зашаренную тобой систему Голдовского (так, для проверки). Из мыслей есть пока только как-то усовершенствовать часть Если вы замечаете, что коэффициенты имеют тенденцию к росту, следует сразу выйти из матча, сделав ставку "Против" по имеющемуся коэффициенту.
    В том плане, что кэф может дернуться на 5-10 секунд, а потом вернуться. А боту пофиг, его надо научить как это "вы замечаете", т.е. как-то притормозить и присмотреться...

    ОтветитьУдалить
  9. Для того что бы решать подобные задачи тебе необходимо изучить Теорию распознавания образов, Теорию принятия решений, а также Теорию случайных процессов. Или хотя бы одну из них.

    Ты готов к тому чтобы применять данные теории на практике, а именно реализовывать подобные алгоритмы в боте?

    Любое другое решение поставленной тобой задачи, почти наверняка, будет неприемлемой и напрасной тратой времени.

    ОтветитьУдалить
  10. Ну, про образы ты это зря, какие именно образы будем распознавать?
    А остальное не такое уж и заумное, как может показаться - в данном случае достаточно просто записывать/запоминать коэф. на протяжении скажем минут 2-3 и принимать решение действительно ли кэф. падает/растет. А не дергаться при первом получении неудобного кэфа. Человек равно как и бот может стремануться и выйти из матча как только скакнет кэф. Так что не надо про искусственный интеллект ;-)
    Да, бот не сможет смотреть матч, но он лучше любого человека сможет следить за кэфами и оценивать риски.

    ОтветитьУдалить
  11. 1. Мы будем распознавать образ случайной функции изменения кэфа по двум параметрам времени и суммам сделок.

    2. Упомянутые мной теории это еще не ИИ. Это всего лишь элементарные приложения Теории вероятностей ;-)

    Но допустим что все эти теории полный фейк и болтовня. Я беру первый попавшийся мне матч http://pikucha.ru/393197. Расскажи как алгоритмически ты будешь анализировать этот график. И как ты определишь что точка 1 это максимальное значение функции после которого наступит спад. И как ты определишь что точка 2 это всего лишь случайная флуктуация на которую не стоит обращать внимание.

    ОтветитьУдалить
  12. Отчего же фейк - отнюдь, я такого не говорил. Я говорил, что в данном случае теория случайных процессов не применима, ибо процессы не случайны. Это ближе к X-Games уже.
    Анализировать график (тем более в этом месте, может конечно пример не удачный) не имеет смысла - кэф. практически не изменился. Я говорю про ситуации как например второй слева резкий скачок вниз - кэф упал на 1 минуту и вернулся назад. Человек и просто бот, получив этот кэф, тут же "выйдет из матча", а ведь достаточно было подождать еще минуту. Вобщем проблемы как таковой для бота я не вижу - это решаемо. Сама система Голдовского дырявая. Вернее она для западных трейдеров вобще не новая и этому учатся в первые месяцы торговли. Наверное, нет смысла вообще этим заниматься.

    ОтветитьУдалить
  13. Почитай этот блог. http://dynamicnotions.blogspot.com/
    Очень жаль что он закрылсо. Вероятно, автор все-таки решил задачу анализа кэфов.

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

    ОтветитьУдалить
  14. Уважаемый FaqBetfair, напишите пожалуйста продолжение, а то такое хорошее начинание и так быстро заглохло.

    ОтветитьУдалить
  15. to Savostin : дружище обнови если можешь еще разок ссылку на электронную версию automatic exchange betting, а то от 20 апреля ссцылко не работает... FAQ BetFair - sorry за переписку в твоем блоге, но у чувака нету никаких обратных координатов и блогов...

    ОтветитьУдалить
  16. Сори, поправил инфо. Стучи.

    ОтветитьУдалить
  17. Прошу в комментах ссылку на сканированную версию "Automatic Exchange Betting" не оставлять. Поскольку, я знаком с автором.

    ОтветитьУдалить
  18. С нетерпением жду следующей части, с примером логина ботом ;)
    Когда ожидать, а также ничего не сменилось, будет?

    ОтветитьУдалить
  19. По "многочисленным просьбам" выложил постоянно здесь

    ОтветитьУдалить
  20. Рекомендую использовать klabor bee. Это свободная программа представляет собой betfair bot toolkit.

    Скачать можно с http://klabor.com/ Если кому интересно, готов помочь с написанием ботов.

    ОтветитьУдалить
    Ответы
    1. Denis, помогите с написанием бота :
      maximum2001@yandex.ru

      Удалить
    2. Похоже, что Денис вместе со своим сайтом klabor.com почил в бозе...

      Удалить
  21. Denis, помогите с написанием бота :
    ermak.kolyan@mail.ru

    ОтветитьУдалить
  22. Denis, не могли бы вы залить программу на какой-нибудь файлообменник т.к. офф. сайт программы уже не работает

    ОтветитьУдалить
  23. Так был написан бот или нет? Имеет ли смысл писать вообще хоть что-то, или автоматизация уже не интересна?

    ОтветитьУдалить
  24. Разместил третью часть. Логин к бирже на языке Java

    ОтветитьУдалить