京公网安备 11010802034615号
经营许可证编号:京B2-20210330
用Python写了个简单的股票量化交易框架
交易
支持 佣金宝 和 华泰 两家券商的自动登录和买卖。
行情
使用的是新浪的免费行情,大概一秒钟推送一次 所有的 3000 多只股票的实时数据。
也可以自己引入 tushare 这个免费的财经信息获取包 或者 引入 wind
策略
其中的事件驱动引擎 和 策略模板 是模仿的 vnpy 的框架
编写非常简单,因为功能比较有限。可以查看下面的 `策略_Demo1`
```
# 引入策略模板
from easyquant import StrategyTemplate
class Strategy(StrategyTemplate):
# 主要实现下面这个 `strategy` 函数就可以了
def strategy(self, event):
""":param event event.data 为所有股票的信息,结构如下
{'162411':
{'ask1': '0.493',
'ask1_volume': '75500',
'ask2': '0.494',
'ask2_volume': '7699281',
'ask3': '0.495',
'ask3_volume': '2262666',
'ask4': '0.496',
'ask4_volume': '1579300',
'ask5': '0.497',
'ask5_volume': '901600',
'bid1': '0.492',
'bid1_volume': '10765200',
'bid2': '0.491',
'bid2_volume': '9031600',
'bid3': '0.490',
'bid3_volume': '16784100',
'bid4': '0.489',
'bid4_volume': '10049000',
'bid5': '0.488',
'bid5_volume': '3572800',
'buy': '0.492',
'close': '0.499',
'high': '0.494',
'low': '0.489',
'name': '华宝油气',
'now': '0.493',
'open': '0.490',
'sell': '0.493',
'turnover': '420004912',
'volume': '206390073.351'}}
"""
# 使用 self.user 来操作账户,使用 self.user.buy() / self.user.sell() 来买卖,用法同 easytrader 用法
# 使用 self.log.info('message') 来打印你所需要的 log
print('\n\n策略1触发')
print('行情数据: 万科价格: ', event.data['000002'])
print('检查持仓')
print(self.user.balance)
print('\n')
```
Demo
运行之后基本是下面这样
```
启动主引擎
[2015-12-28 14:05:36.649599] INFO: main_engine.py: 加载策略: 策略 1_Demo
[2015-12-28 14:05:36.650250] INFO: main_engine.py: 加载策略: 策略 2_Demo
[2015-12-28 14:05:36.650713] INFO: main_engine.py: 加载策略完毕
触发每秒定时计时器
策略 1 触发
行情数据:
万科价格: {'ask4': 0.0, 'ask1': 0.0, 'bid2_volume': 0, 'bid3': 0.0,
'bid5_volume': 0, 'name': '万 科A', 'ask4_volume': 0, 'close': 24.43,
'volume': 0.0, 'ask3_volume': 0, 'bid5': 0.0, 'bid1': 0.0, 'ask2': 0.0,
'bid4_volume': 0, 'high': 0.0, 'ask5': 0.0, 'bid4': 0.0, 'ask5_volume':
0, 'turnover': 0, 'ask2_volume': 0, 'sell': 0.0, 'open': 0.0,
'bid3_volume': 0, 'bid2': 0.0, 'bid1_volume': 0, 'buy': 0.0, 'ask3':
0.0, 'low': 0.0, 'now': 0.0, 'ask1_volume': 0}
检查持仓
[{'asset_balance':
2758.98, 'market_value': 2740.9, 'enable_balance': 18.08,
'current_balance': 18.08, 'money_name': '人民币', 'fetch_balance': 18.08,
'money_type': '0'}]
策略 2 触发
行情数据: 华宝油气 {'ask4': 0.5,
'ask1': 0.497, 'bid2_volume': 4594100, 'bid3': 0.494, 'bid5_volume':
851300, 'name': '华宝油气', 'ask4_volume': 15650706, 'close': 0.5, 'volume':
138149552.799, 'ask3_volume': 19611307, 'bid5': 0.492, 'bid1': 0.496,
'ask2': 0.498, 'bid4_volume': 313700, 'high': 0.501, 'ask5': 0.501,
'bid4': 0.493, 'ask5_volume': 10108300, 'turnover': 277462973,
'ask2_volume': 10747730, 'sell': 0.497, 'open': 0.5, 'bid3_volume':
997500, 'bid2': 0.495, 'bid1_volume': 5507952, 'buy': 0.496, 'ask3':
0.499, 'low': 0.495, 'now': 0.497, 'ask1_volume': 14948518}
检查持仓
[{'asset_balance':
2758.98, 'market_value': 2740.9, 'enable_balance': 18.08,
'current_balance': 18.08, 'money_name': '人民币', 'fetch_balance': 18.08,
'money_type': '0'}]
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在数据仓库与数据分析体系中,维度表与事实表是构建结构化数据模型的核心组件,二者如同“骨架”与“血肉”,协同支撑起各类业务 ...
2026-01-16在游戏行业“存量竞争”的当下,玩家留存率直接决定游戏的生命周期与商业价值。一款游戏即便拥有出色的画面与玩法,若无法精准识 ...
2026-01-16为配合CDA考试中心的 2025 版 CDA Level III 认证新大纲落地,CDA 网校正式推出新大纲更新后的第一套官方模拟题。该模拟题严格遵 ...
2026-01-16在数据驱动决策的时代,数据分析已成为企业运营、产品优化、业务增长的核心工具。但实际工作中,很多数据分析项目看似流程完整, ...
2026-01-15在CDA(Certified Data Analyst)数据分析师的日常工作中,“高维数据处理”是高频痛点——比如用户画像包含“浏览次数、停留时 ...
2026-01-15在教育测量与评价领域,百分制考试成绩的分布规律是评估教学效果、优化命题设计的核心依据,而正态分布则是其中最具代表性的分布 ...
2026-01-15在用户从“接触产品”到“完成核心目标”的全链路中,流失是必然存在的——电商用户可能“浏览商品却未下单”,APP新用户可能“ ...
2026-01-14在产品增长的核心指标体系中,次日留存率是当之无愧的“入门级关键指标”——它直接反映用户对产品的首次体验反馈,是判断产品是 ...
2026-01-14在CDA(Certified Data Analyst)数据分析师的业务实操中,“分类预测”是高频核心需求——比如“预测用户是否会购买商品”“判 ...
2026-01-14在数字化时代,用户的每一次操作——无论是电商平台的“浏览-加购-下单”、APP的“登录-点击-留存”,还是金融产品的“注册-实名 ...
2026-01-13在数据驱动决策的时代,“数据质量决定分析价值”已成为行业共识。数据库、日志系统、第三方平台等渠道采集的原始数据,往往存在 ...
2026-01-13在CDA(Certified Data Analyst)数据分析师的核心能力体系中,“通过数据建立模型、实现预测与归因”是进阶关键——比如“预测 ...
2026-01-13在企业数字化转型过程中,业务模型与数据模型是两大核心支撑体系:业务模型承载“业务应该如何运转”的逻辑,数据模型解决“数据 ...
2026-01-12当前手游市场进入存量竞争时代,“拉新难、留存更难”成为行业普遍痛点。对于手游产品而言,用户留存率不仅直接决定产品的生命周 ...
2026-01-12在CDA(Certified Data Analyst)数据分析师的日常工作中,“挖掘变量间的关联关系”是高频核心需求——比如判断“用户停留时长 ...
2026-01-12在存量竞争时代,用户流失率直接影响企业的营收与市场竞争力。无论是电商、互联网服务还是金融行业,提前精准预测潜在流失用户, ...
2026-01-09在量化投资领域,多因子选股是主流的选股策略之一——其核心逻辑是通过挖掘影响股票未来收益的各类因子(如估值、成长、盈利、流 ...
2026-01-09在CDA(Certified Data Analyst)数据分析师的工作场景中,分类型变量的关联分析是高频需求——例如“用户性别与商品偏好是否相 ...
2026-01-09数据库中的历史数据,是企业运营过程中沉淀的核心资产——包含用户行为轨迹、业务交易记录、产品迭代日志、市场活动效果等多维度 ...
2026-01-08在电商行业竞争日趋激烈的当下,数据已成为驱动业务增长的核心引擎。电商公司的数据分析师,不仅是数据的“解读官”,更是业务的 ...
2026-01-08