This project is intended to provide a way to access public availabe data of the B3 Stock Exchange (former BMF & Bovespa).
Try to provide a little organization to the mess of all sorts of files into a generic and comprehensive framework to be incorporated into client apllications of all sorts.
Please keep the observed current code style. Don't use your creativity here, put it somewhere else. I am sure you will find it pretty easy to follow.
B3 Explorer is a project to allow the user of B3 provider to visualize the data it makes available.
For now N/A But probably will use:
- Flat files reading framework: FlatFile
- Excel files reading framework: ExcelDataReader
- Logging framework
- Equity Instruments Loading
- Options on Equities Instruments Loading
- Loading Daily Quotes Files
- Loading Historic Quotes Files
- Company Sector Classification Files
- Loading Indexes Files
- Loading Future Data
- Loading Margin Call Files
- Loading Holiday Files (already in source code)
- Include columns of price movement (1Day, WTD, MTD, YTD)(on progress)
- Include columns of indicators (avg volume, atr, irf, mas)
- Smart downloads (only when needed)
- Save info to database
- Load info from database
- Support to asynchronous operations
Infelizmente não consigo mais encontrar a documentação do arquivo no site oficial da B3 ou IPN. Obrigado ao genio que publicou em um site alternativo: Manual de mensagens
Alguma coisa me diz que os manuais terem desaparecido está relacionado com isso (não estou afirmando): Politica Comercial Up2Data
// create a configuration instance
var config = new B3ProviderConfig();
// define properties
config.ReplaceExistingFiles = true;
// create an instance of the client
var client = new B3ProviderClient(config);
// load all instruments into memory
client.LoadInstruments();
// get information about PETR4 stock (the most popular in B3)
var equity = client.EquityInstruments.Where(e => e.Ticker.Equals("PETR4", StringComparison.InvariantCultureIgnoreCase)).FirstOrDefault();
// get information about option calls on PETR4 stock
var optionsCalls = client.OptionInstruments.Where(o => o.B3IDUnderlying == equity.B3ID && o.Type == B3OptionOnEquityTypeInfo.Call).ToList();
// get information about option puts on PETR4 stock
var optionsPuts = client.OptionInstruments.Where(o => o.B3IDUnderlying == equity.B3ID && o.Type == B3OptionOnEquityTypeInfo.Put).ToList();
Anyone who whishs to contribute to the project just have to remember to follow the rules accordingly to the following guide contributing guideline will be a big plus.
-
This project was inpired by a fellow risk manager Wilson Freitas interested in programming that created a similar work for people who uses R Language in data analysis. His project is available in extract.r
-
In the source code you will find references to all relevant people that directly or indirectly contributed to the final results.
B3Provider is available on github here under MIT license. If you hit bugs, fill issues on github. Feel free to fork, modify and have fun with it :)
MIT © Felipe Bahiana Almeida