CtrlK
BlogDocsLog inGet started
Tessl Logo

data-routing

Data source selection decision tree. Load this skill BEFORE any backtest or data-fetching task to choose the best available data source.

71

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Data Source Overview

SourceMarketsAuth RequiredNetworkSkill
tushareA-shares, funds, futures, macroYes (TUSHARE_TOKEN)China networktushare
akshareA-shares, US, HK, futures, macro, forexNoUnrestrictedakshare
yfinanceUS stocks, HK stocks, ETFsNoNeeds Yahoo Finance accessyfinance
okxCrypto (OKX exchange)NoNeeds okx.com accessokx-market
ccxtCrypto (100+ exchanges)NoNeeds exchange accessccxt

Decision Tree

Backtest Scenario (writing config.json)

Use source: "auto" — the runner automatically routes by symbol pattern and falls back to alternative sources if the primary one is unavailable.

You do NOT need to specify a concrete data source in config.json unless the user explicitly asks for one.

Analysis / Research Scenario (writing Python scripts)

  1. Identify the market type from the user's request
  2. Pick the source by priority:

A-shares: tushare (if TUSHARE_TOKEN is set) > akshare (free fallback) US stocks: yfinance > akshare HK stocks: yfinance > akshare Crypto: okx (single exchange) > ccxt (multi-exchange) Futures: tushare > akshare Macro / economics: akshare > tushare Forex: akshare > yfinance

  1. Load the corresponding skill for API details: load_skill("akshare")

Availability Check

  • tushare: check if TUSHARE_TOKEN environment variable exists
  • yfinance / okx / ccxt / akshare: free but may have network restrictions
  • If the user reports "connection timeout" or "cannot access", switch to the same-market fallback

Symbol Format Reference

MarketFormatExamples
A-sharesNNNNNN.SZ/SH/BJ000001.SZ, 600000.SH
US stocksTICKER.USAAPL.US, MSFT.US
HK stocksNNN(N).HK700.HK, 9988.HK
CryptoSYMBOL-USDTBTC-USDT, ETH-USDT
FuturesXXNNNN.EXCHANGECU2406.SHFE
ForexXXX/YYYUSD/CNY, EUR/USD

Fallback Chain (Runner Layer)

The backtest runner implements automatic fallback at the market level:

User requests 000001.SZ (A-share)
  -> detect market: a_share
  -> try tushare: TUSHARE_TOKEN missing -> skip
  -> try akshare: available -> use akshare
  -> success (zero config required)

This is transparent to the user — they just see results.

Repository
charliedream1/ai_quant_trade
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.