fix(datasource): 支持US_STOCK和HK_STOCK类型数据获取
- universal_fetcher.py: 添加 _fetch_us_stock 和 _fetch_hk_stock 方法 - flask_server.py: SSH_HOST 修正为正确的IP地址 8.218.167.69 - 测试 META 获取成功,info 字段在最外层返回179个属性
This commit is contained in:
12
.env
12
.env
@@ -25,3 +25,15 @@ OSS_ACCESS_KEY_ID=LTAI5tKD9izrfbQNSVeu4NYd
|
||||
OSS_ACCESS_KEY_SECRET=Vif8FmvEat9qBA4EBbKnXhHvFQokdR
|
||||
OSS_BUCKET_NAME=value-investing
|
||||
OSS_ENDPOINT=https://oss-cn-wulanchabu.aliyuncs.com
|
||||
|
||||
# ==================== SSH 隧道配置(港美股代理) ====================
|
||||
SSH_ENABLED=true
|
||||
SSH_HOST=8.218.167.69
|
||||
SSH_PORT=22
|
||||
SSH_USERNAME=root
|
||||
SSH_KEY_PATH=hk_ecs.pem
|
||||
SSH_LOCAL_PORT=1080
|
||||
|
||||
# ==================== Flask 缓存配置 ====================
|
||||
CACHE_MAXSIZE=128
|
||||
CACHE_TTL_SECONDS=7200
|
||||
|
||||
@@ -135,8 +135,12 @@ class UniversalDataFetcher:
|
||||
return self._fetch_china_etf(code, start_date, end_date)
|
||||
elif asset_type == AssetType.US_INDEX:
|
||||
return self._fetch_us_index(code, start_date, end_date)
|
||||
elif asset_type == AssetType.US_STOCK:
|
||||
return self._fetch_us_stock(code, start_date, end_date)
|
||||
elif asset_type == AssetType.HK_INDEX:
|
||||
return self._fetch_hk_index(code, start_date, end_date)
|
||||
elif asset_type == AssetType.HK_STOCK:
|
||||
return self._fetch_hk_stock(code, start_date, end_date)
|
||||
elif asset_type == AssetType.FUTURES:
|
||||
return self._fetch_futures(code, start_date, end_date)
|
||||
elif asset_type == AssetType.CRYPTO:
|
||||
@@ -262,6 +266,20 @@ class UniversalDataFetcher:
|
||||
self._start_tunnel()
|
||||
return self._yfinance.fetch(code, start_date, end_date)
|
||||
|
||||
def _fetch_us_stock(
|
||||
self,
|
||||
code: str,
|
||||
start_date: str,
|
||||
end_date: str
|
||||
) -> Optional[pd.DataFrame]:
|
||||
"""
|
||||
获取美股股票
|
||||
|
||||
特点:YFinance,需要SSH隧道,返回价格+股票信息
|
||||
"""
|
||||
self._start_tunnel()
|
||||
return self._yfinance.fetch(code, start_date, end_date)
|
||||
|
||||
def _fetch_hk_index(
|
||||
self,
|
||||
code: str,
|
||||
@@ -276,6 +294,20 @@ class UniversalDataFetcher:
|
||||
self._start_tunnel()
|
||||
return self._yfinance.fetch(code, start_date, end_date)
|
||||
|
||||
def _fetch_hk_stock(
|
||||
self,
|
||||
code: str,
|
||||
start_date: str,
|
||||
end_date: str
|
||||
) -> Optional[pd.DataFrame]:
|
||||
"""
|
||||
获取港股股票
|
||||
|
||||
特点:YFinance,需要SSH隧道,返回价格+股票信息
|
||||
"""
|
||||
self._start_tunnel()
|
||||
return self._yfinance.fetch(code, start_date, end_date)
|
||||
|
||||
def _fetch_futures(
|
||||
self,
|
||||
code: str,
|
||||
|
||||
Reference in New Issue
Block a user