获取 AKshare 的数据,为 VectorBt、Pybroker等框架提供数据

阅读 22

07-21 12:00

1、AKShare 日线数据地址:https://akshare.akfamily.xyz/data_tips.html#stock-zh-a-hist

            历史行情数据-东财    https://akshare.akfamily.xyz/data/stock/stock.html#id22    =》 接口: stock_zh_a_hist  

            历史行情数据-新浪   接口: stock_zh_a_daily  ,  历史行情数据-腾讯  接口: stock_zh_a_hist_tx,

           分时数据-新浪  接口: stock_zh_a_minute, 分时数据-东财  接口: stock_zh_a_hist_min_em

import akshare as ak
stock_df = ak.stock_zh_a_hist(
    symbol="600734",
    period="daily",
    start_date="20050501",
    end_date="20050520",
    adjust="hfq"
)

2、Pybroker 如何获取? 
   参考官方: AKShare 策略示例  https://akshare.akfamily.xyz/demo.html

3、VectorBt 如何获取?
   网上的一个示例:VectorBT项目如何扩展中国A股市场数据源接入 - GitCode博客      提供的代码如下:

class AKShareData (Data):   
def __init__(self, symbol, start_date, end_date, interval='1d'):
self.symbol = self._normalize_symbol(symbol)
        self.start_date = pd.to_datetime(start_date)
        self.end_date = pd.to_datetime(end_date)
        self.interval = interval
        self._data = None    def _normalize_symbol (self, symbol):
# 实现A股代码标准化逻辑
        pass    def _fetch_data (self):
# 调用AKShare接口获取原始数据
        raw_data = ak.stock_zh_a_daily (         ## 新浪 接口,官方推荐:东财接口: stock_zh_a_hist,                        symbol=self.symbol,
                        start_date=self.start_date.strftime('%Y%m%d'),
                        end_date=self.end_date.strftime('%Y%m%d')             )        
        # 数据清洗与标准化        processed = raw_data.rename ( columns= {
            'date': 'datetime',
            'open': 'Open',
            'high': 'High',
            'low': 'Low',
            'close': 'Close',
            'volume': 'Volume'
        }).set_index('datetime')
        return processed


精彩评论(0)

0 0 举报