298 lines
7.0 KiB
Plaintext
298 lines
7.0 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"<!-- https://mp.weixin.qq.com/s/GM5V-y4W26klL8JwzvHOCw -->"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"import pandas as pd\n",
|
||
"from findpeaks import findpeaks\n",
|
||
"# import qstock as qs"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# X=qs.get_data('上证指数',start='20040101',end='20240808').close\n",
|
||
"# stock_zh_index_daily_df = ak.stock_zh_index_daily(symbol=\"sh000001\").iloc[-240:]\n",
|
||
"futures_zh_minute_sina_df = ak.futures_zh_minute_sina(symbol=\"IM0\", period=\"5\")\n",
|
||
"# index_zh_a_hist_df = ak.index_zh_a_hist(symbol=\"000001\", period=\"daily\", start_date=\"20220101\", end_date=\"22350311\")\n",
|
||
"# stock_zh_index_daily_em_df = ak.stock_zh_index_daily_em(symbol=\"sz399812\")\n",
|
||
"# stock_zh_index_daily_df = ak.stock_zh_index_daily(symbol=\"sz399552\")\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# index_zh_a_hist_df.tail(5)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# X = index_zh_a_hist_df['收盘']\n",
|
||
"X = futures_zh_minute_sina_df.close"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"futures_zh_minute_sina_df.tail(5)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# 初始化\n",
|
||
"fp = findpeaks(method='topology')\n",
|
||
"#拟合\n",
|
||
"results = fp.fit(X)\n",
|
||
"#可视化\n",
|
||
"fp.plot()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# from findpeaks import findpeaks\n",
|
||
"#初始化设置\n",
|
||
"fp = findpeaks(method='peakdetect', lookahead=200, interpolate=None)\n",
|
||
"#拟合 peakdetect 方法\n",
|
||
"results = fp.fit(X)\n",
|
||
"#可视化\n",
|
||
"fp.plot()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# 使用凯鲁斯方法初始化findpeaks\n",
|
||
"# 默认设置是只返回至少有5%差异的峰值和谷值\n",
|
||
"fp = findpeaks(method='caerus', params={'minperc':5, 'window':50})\n",
|
||
"\n",
|
||
"#拟合数据\n",
|
||
"results = fp.fit(X)\n",
|
||
"\n",
|
||
"#可视化\n",
|
||
"fp.plot()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"stock_df = ak.rv_from_stock_zh_a_hist_min_em(\n",
|
||
" symbol=\"000001\",\n",
|
||
" start_date=\"2021-10-20 09:30:00\",\n",
|
||
" end_date=\"2025-3-11 15:00:00\",\n",
|
||
" period=\"5\",\n",
|
||
" adjust=\"\"\n",
|
||
")\n",
|
||
"volatility_yz_rv_df = ak.volatility_yz_rv(data=stock_df)\n",
|
||
"print(volatility_yz_rv_df)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"option_lhb_em_df = ak.option_lhb_em(symbol=\"mo2503\", indicator=\"期权持仓情况-认沽持仓量\", trade_date=\"20250311\")\n",
|
||
"print(option_lhb_em_df)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"option_minute_em_df = ak.option_minute_em(symbol=\"MO2503-C-6400\")\n",
|
||
"print(option_minute_em_df)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"stock_zh_index_spot_em_df = ak.stock_zh_index_spot_em(symbol=\"上证系列指数\")\n",
|
||
"stock_zh_index_spot_em_df"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"futures_zh_spot_df = ak.futures_zh_spot(symbol='AG2504', market=\"CF\", adjust='0')\n",
|
||
"print(futures_zh_spot_df)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import time\n",
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"dce_text = ak.match_main_contract(symbol=\"dce\")\n",
|
||
"czce_text = ak.match_main_contract(symbol=\"czce\")\n",
|
||
"shfe_text = ak.match_main_contract(symbol=\"shfe\")\n",
|
||
"gfex_text = ak.match_main_contract(symbol=\"gfex\")\n",
|
||
"\n",
|
||
"while True:\n",
|
||
" time.sleep(3)\n",
|
||
" futures_zh_spot_df = ak.futures_zh_spot(\n",
|
||
" symbol=\",\".join([dce_text, czce_text, shfe_text, gfex_text]),\n",
|
||
" market=\"CF\",\n",
|
||
" adjust='0')\n",
|
||
" # print(futures_zh_spot_df)\n",
|
||
" futures_zh_spot_df"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import time\n",
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"cffex_text = ak.match_main_contract(symbol=\"cffex\")\n",
|
||
"\n",
|
||
"while True:\n",
|
||
" time.sleep(3)\n",
|
||
" futures_zh_spot_df = ak.futures_zh_spot(symbol=cffex_text, market=\"FF\", adjust='0')\n",
|
||
" print(futures_zh_spot_df)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"df = ak.futures_symbol_mark() "
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"futures_zh_realtime_df = ak.futures_zh_realtime(symbol=\"白银\")\n",
|
||
"print(futures_zh_realtime_df)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"futures_nh_volatility_index_df = ak.futures_nh_volatility_index(symbol=\"IC\", period='5')\n",
|
||
"print(futures_nh_volatility_index_df)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"shfe_trading_hours = ak.shfe_trading_hours()\n",
|
||
"print(shfe_trading_hours)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import akshare as ak\n",
|
||
"\n",
|
||
"futures_fees_info_df = ak.futures_fees_info()\n",
|
||
"print(futures_fees_info_df)"
|
||
]
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "Python 3",
|
||
"language": "python",
|
||
"name": "python3"
|
||
},
|
||
"language_info": {
|
||
"codemirror_mode": {
|
||
"name": "ipython",
|
||
"version": 3
|
||
},
|
||
"file_extension": ".py",
|
||
"mimetype": "text/x-python",
|
||
"name": "python",
|
||
"nbconvert_exporter": "python",
|
||
"pygments_lexer": "ipython3",
|
||
"version": "3.10.9"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 2
|
||
}
|