PT.MarketDataService is a windows service built with C# to collect different kind of market data from Interactive Brokers TWS Api and store them for further use.
The overall architecture as been design respecting DDD practices.
- Collect and store market scanners based on time schedule
- Collect and store Level 1 data based on retrieved scanner contracts
- Define your Scanner Parameters in the database (Check the DefaultInitializer)
- Configure app.config
- Define DefaultConnection (Connection String)
- Configure your TWS Api (IbHost, IbPort, IbClientId)
- Adjust the frequency (in seconds) you wish to retrieve Level 1 data (Level1RequestFrequencySec)
- (Optional) Install the service on Windows
Using IB Gateway with your Paper Trading account is suggested.
- IB.CSharpApiClient
- TPL Dataflow
- SimpleInjector
- Entity Framework 6 (Code First with Unit of Work abstraction)
- Topshelf
- NLog