C# The beginnings of a bot

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts

  • vossie
    replied
    BfPDS

    The initial version of BfPDS will expose the following services in a unified way
    - Betfair Global
    - Betfair Exchange Sports
    - Timeform Horse Racing (See the Timeform project I posted on this forum https://forum.bdp.betfair.com/showthread.php?t=340)
    - Betfair Tote/s

    And possibly at a later stage we could add
    - Betfair Exchange Games
    Last edited by vossie; 31-10-2009, 02:14 PM.

    Leave a comment:


  • vossie
    replied
    The idea is this:
    1 - You have a single instance of the BfPDS running on your local network and all your applications, scripts notifiers etc. talks to the BfPDS.
    2 - The BfPDS is built using WCF technology to allow for interop and allow communication over multiple protocols
    3 - The BfPDS exposes it's own Betfair domain model isolating it to changes in the Betfair API WSDL
    4 - The BfPDS has plug-in architecture and internal event streams, so you can use it in conjunction with something like PHP in a simulated push architecture. The process flow for the post plug-in will be: You send a request to the BfPDS polling method with the parameters and data request you want it to process, incrementally it makes the data request and caches the response locally, if the data changed an internal event gets fired the plug-in listens for this event and posts to the configured endpoint i.e. http://localhost/myscripts/php5/marketdataupdated.php This is only for languages that does not support the built-in 2 way communication.
    5 - It also exposes the service with the option of MS http dual binding
    6 - Must be mono compliant (possibly with some acceptable feature loss)
    7 - Single outbound data request manager with multiple internal consumers from a network perspective.

    This is a rough overview but once I have completed the design schematics and proposed screen shots I will have a project page created and assemble a merry team of participants.

    Would anybody be interested.
    Last edited by vossie; 31-10-2009, 07:55 PM.

    Leave a comment:


  • vossie
    replied
    Where do we go next?

    Originally posted by bfhopsen View Post
    I just wandered what happened with your open source C# Project you started several months ago, and what happened with your participation in this forum, then you come with Lignite. Be sure that someone like it and that it is very useful especially because this forum has started to lack answers on some very important and interesting questions (I am really wandering what is going on with responsiveness on the BDP forum, it is as bad as betfair api responses on GetMarketTradedVolumeCompressed calls in the past month )
    I am coding in Java, but nevertheless, in Lignite I can find some very useful answers and concepts. Just continue.
    Also hope that you will have time to answer some questions if I step into some problems.

    P.S Sorry for English
    No problem mate and I will try to answer questions where possible

    The work and project started previously was conceptionally sound but lacked in many respects (most notably time & funding).

    This project was a proof of concept built on those ideas explored previously and helped iron out some questions and performance considerations.

    I have drawn the following conclusions based on the research and work done in private and publicly
    • We all redesign the wheel when we start a new Betfair API project
    • We all do pretty much the same thing (except for the trading desision part)
    • There is a lot of guys out there comfortable with scripted languages that does not support built in multi threading
    • Local push based on a local network model would go a long way to get users going (in other words, an event driven architecture See: http://www.amazon.co.uk/Event-Driven.../dp/0321322118)
    • A way of centrally dealing with the plethora of different charging schemes the guys dream up


    Work will shortly be starting on what I affectionately call the "Betfair Personal Data Server" or BfPDS (maybe the community can help me come up with a better name)

    Continued...
    Last edited by vossie; 31-10-2009, 01:55 PM.

    Leave a comment:


  • bfhopsen
    replied
    No doubt

    I just wandered what happened with your open source C# Project you started several months ago, and what happened with your participation in this forum, then you come with Lignite. Be sure that someone like it and that it is very useful especially because this forum has started to lack answers on some very important and interesting questions (I am really wandering what is going on with responsiveness on the BDP forum, it is as bad as betfair api responses on GetMarketTradedVolumeCompressed calls in the past month )
    I am coding in Java, but nevertheless, in Lignite I can find some very useful answers and concepts. Just continue.
    Also hope that you will have time to answer some questions if I step into some problems.

    P.S Sorry for English

    Leave a comment:


  • vossie
    replied
    Originally posted by saint View Post
    Nice example, cheers
    Thanks, was starting to wonder if anyone would like it

    Leave a comment:


  • saint
    replied
    Nice example, cheers

    Leave a comment:


  • vossie
    started a topic C# The beginnings of a bot

    C# The beginnings of a bot

    I created the following application as a proof of concept. It is by no means production ready but I thought I would make it available as it might be of use to somebody building a bot and looking for a foot up or just some crazy ideas for their interface.

    The first person or team to complete this project is welcome to Free full API access for up to 5 accounts, just mail bdp@betfair.com. By complete I mean tested, bet placement functionality added and data request charge counters added. Remember the original copyright holder will continue to be Betfair and this work is released under the GNU General Public License.

    If you make improvements to this library please post them here so we can include these into the project.

    Also be careful this thing stores the user name & password in the config file (yes I know I should have removed this) and secondly if you configure it wrong you will get hit by the data request charge.

    To run the compiled program do the following
    1. Extract to your local machine
    2. run ..\Lignite 1.0\Lignite.Console\bin\Debug\Lignite.Console.exe
    3. Go to Edit -> Main Config File -> Betfair and set your username and password. Close config
    4. Click Start
    5. Click Stop
    6. Go to Edit -> Main Config File -> Betfair and un-set your username and password. Close config

    The idea behind this is rather simple separate everything, data view, data collection and make the strategy part a plug-in.

    Happy coding


    *** The Legal Stuff ***

    The library is provided "as is" without warranty of any kind, either expressed or implied, including, without limitation, warranties that the library is free of defects, merchantable, fit for a particular purpose or non-infringing. the entire risk as to the quality and performance of the library is with you. Should any prove defective in any respect, you (not the initial developer or any other contributor) assume the cost of any necessary servicing, repair or correction.
    Last edited by vossie; 27-10-2009, 06:13 PM.
Working...
X