Boutquin.MarketData.Adapter.Shared
2.0.1
dotnet add package Boutquin.MarketData.Adapter.Shared --version 2.0.1
NuGet\Install-Package Boutquin.MarketData.Adapter.Shared -Version 2.0.1
<PackageReference Include="Boutquin.MarketData.Adapter.Shared" Version="2.0.1" />
<PackageVersion Include="Boutquin.MarketData.Adapter.Shared" Version="2.0.1" />
<PackageReference Include="Boutquin.MarketData.Adapter.Shared" />
paket add Boutquin.MarketData.Adapter.Shared --version 2.0.1
#r "nuget: Boutquin.MarketData.Adapter.Shared, 2.0.1"
#:package Boutquin.MarketData.Adapter.Shared@2.0.1
#addin nuget:?package=Boutquin.MarketData.Adapter.Shared&version=2.0.1
#tool nuget:?package=Boutquin.MarketData.Adapter.Shared&version=2.0.1
Boutquin.MarketData.Adapter
2.0.1: targets MarketData
2.0.1and Storage2.0.1from NuGet.org. See migration and build verification.
Concrete data source adapters for the Boutquin.MarketData kernel. Each adapter implements IDataSourceAdapter<TRequest, TRecord> from Boutquin.MarketData.Abstractions and self-registers via an AddMarketData*() extension method on IServiceCollection. Adapters are standalone NuGet packages — install only the ones you need.
Adapters
| Package | Provider | Records | Auth |
|---|---|---|---|
Boutquin.MarketData.Adapter.Tiingo |
Tiingo | Bar, InstrumentMetadata, DividendPayment |
API token |
Boutquin.MarketData.Adapter.TwelveData |
Twelve Data | Bar, InstrumentMetadata |
API key |
Boutquin.MarketData.Adapter.Frankfurter |
Frankfurter (ECB FX) | FxRate |
Anonymous |
Boutquin.MarketData.Adapter.Fred |
FRED (St. Louis Fed) | ScalarObservation |
API key |
Boutquin.MarketData.Adapter.BankOfCanada |
Bank of Canada | YieldCurveQuote, FxRate, ScalarObservation (CORRA) |
Anonymous |
Boutquin.MarketData.Adapter.NewYorkFed |
NY Fed Markets API | ScalarObservation (SOFR) |
Anonymous |
Boutquin.MarketData.Adapter.UsTreasury |
US Treasury H.15 | YieldCurveQuote |
Anonymous |
Boutquin.MarketData.Adapter.BankOfEngland |
BoE IADB | ScalarObservation (SONIA) |
Anonymous |
Boutquin.MarketData.Adapter.Ecb |
ECB SDMX | ScalarObservation (ESTR) |
Anonymous |
Boutquin.MarketData.Adapter.FamaFrench |
Ken French Data Library | FactorObservation |
Anonymous |
Boutquin.MarketData.Adapter.Cme |
CME Group settlement CSV files | FuturesSettlement |
File-based |
See docs/adapters.md for per-adapter configuration details, rate limits, publication lag notes, and data-quality caveats.
Design Principles
- Each provider adapter is a standalone NuGet package; it may use Shared utilities but does not depend on another provider adapter
- Self-registering DI: each adapter provides a single
AddMarketData*()extension method - Canonical-first: adapters emit typed records, not dictionaries
DataDateonDataProvenanceis the actual business date of data served, which may differ from the requested date for sources with publication lagDATE_ROLLBACKDataIssueemitted when actual data date precedes the requested date (e.g., requesting Monday SOFR before the NY Fed publishes returns Friday's fixing)- Source adapters may depend on the shared Adapter utilities; no source adapter depends on another provider adapter or on domain packages (
Boutquin.Analytics,Boutquin.Trading,Boutquin.OptionPricing)
Quick Start
dotnet add package Boutquin.MarketData.Adapter.Tiingo --version 2.0.1
dotnet add package Boutquin.MarketData.DependencyInjection --version 2.0.1
Install Fred and NewYorkFed at the same Adapter version to run the full example below.
// Add the kernel from Boutquin.MarketData.DependencyInjection,
// then attach whichever adapters you need.
services
.AddMarketDataKernel()
.AddMarketDataTiingo(opts =>
{
opts.ApiToken = configuration["Tiingo:ApiToken"]!;
})
.AddMarketDataFred(opts =>
{
opts.ApiKey = configuration["Fred:ApiKey"]!;
})
.AddMarketDataNewYorkFed();
Then fetch one symbol via IDataPipeline (the records do not contain a ticker):
var symbol = new Symbol("AAPL");
var result = await pipeline.ExecuteAsync<PriceHistoryRequest, Bar>(
new PriceHistoryRequest([symbol], dateRange),
cancellationToken);
foreach (var bar in result.Payload)
{
Console.WriteLine($"{symbol.Ticker} {bar.Date}: close={bar.Close}");
}
Building
dotnet build Boutquin.MarketData.Adapter.slnx --configuration Release
dotnet test Boutquin.MarketData.Adapter.slnx --configuration Release
dotnet format Boutquin.MarketData.Adapter.slnx --verify-no-changes
Qualified dependency setup
Use the SDK selected by global.json and runner dependencies. All packages restore from NuGet.org. Directory.Packages.props records the exact kernel version and public source commit; dependency-source.json pins signed upstream archives. Never rebuild an accepted package identity.
Documentation
- Adapter Reference — per-adapter configuration, auth, publication lag, and data-quality notes
Disclaimer
Boutquin.MarketData.Adapter is open-source software provided under the Apache 2.0 License. It is a general-purpose library intended for educational and research purposes.
This software does not constitute financial advice. The data retrieval and normalization tools are provided as-is for research and development. Before using any market data or derived calculations in production, consult with qualified professionals who understand your specific requirements and regulatory obligations.
License
Licensed under the Apache License, Version 2.0.
Copyright (c) 2026 Pierre G. Boutquin. All rights reserved.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Boutquin.Domain (>= 1.0.1)
- Boutquin.MarketData.Abstractions (>= 2.0.1)
- Boutquin.MarketData.Calendars (>= 2.0.1)
NuGet packages (11)
Showing the top 5 NuGet packages that depend on Boutquin.MarketData.Adapter.Shared:
| Package | Downloads |
|---|---|
|
Boutquin.MarketData.Adapter.NewYorkFed
Package Description |
|
|
Boutquin.MarketData.Adapter.UsTreasury
Package Description |
|
|
Boutquin.MarketData.Adapter.BankOfCanada
Package Description |
|
|
Boutquin.MarketData.Adapter.TwelveData
Package Description |
|
|
Boutquin.MarketData.Adapter.FamaFrench
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.1 | 258 | 11/2/2026 |
| 2.0.0-rc.20261027.4 | 110 | 10/27/2026 |
| 1.0.2 | 427 | 4/17/2026 |