【量化QMT/ptrade】如何在策略中获取当前的交易品种和周期(日线/分钟)?
发布时间:2026-4-28 13:57阅读:128
在 QMT 和 Ptrade 中获取当前交易品种和周期的方式有所不同,以下分别介绍:
QMT
- 获取当前交易品种:在策略的函数(如
handle_bar、handle_data等)中,通常会传入一个包含相关信息的上下文对象(context)。如果在策略初始化时设置了交易品种,可通过访问上下文对象的相关属性获取。例如:
python
def after_init(context):
context.stock_code = '600000.SH' # 设置交易品种
def handle_bar(context, bar_dict):
current_stock = context.stock_code
print(f"当前交易品种: {current_stock}")
- 获取当前周期:QMT 中可以通过
subscribe函数设置数据周期,并在相关函数中根据逻辑判断当前周期。例如,在handle_bar函数中:
python
def handle_bar(context, bar_dict):
if context.subscribe_type == '1d':
print("当前周期为日线")
elif context.subscribe_type == '1m':
print("当前周期为分钟线")
这里假设在subscribe函数设置周期时,会将周期信息存储在context.subscribe_type中,实际使用中需根据具体设置和 QMT 版本确认。
Ptrade
- 获取当前交易品种:在
initialize函数中设置交易品种,在其他函数(如handle_data、tick_data等)中可通过全局变量获取。示例如下:
python
def initialize(context):
g.security = '600570.SS' # 设置交易品种
def handle_data(context, data):
current_stock = g.security
print(f"当前交易品种: {current_stock}")
- 获取当前周期:在 Ptrade 中,不同的周期会触发不同的函数。例如,日线周期会触发
handle_data函数,分钟线周期若设置了相应频率,会按设置频率触发handle_data函数,tick 周期会触发tick_data函数。可以通过所在函数来判断当前周期。
python
def handle_data(context, data):
print("当前在日线或分钟线周期处理函数中")
def tick_data(context, data):
print("当前在tick周期处理函数中")
如果需要更精确判断分钟线周期的具体分钟数,可结合set_schedule函数设置的定时任务和相关逻辑来实现。
开户找我优惠多多!选8888资金靓号!ETF佣金万0.5!逆回购手续费百万分之一!免费量化qmt/ptrade!更多优惠欢迎找我!
温馨提示:投资有风险,选择需谨慎。
- QMT交易系统怎么开?办理流程是什么?2026年量化攻略
- 2026 年怎么样免费开通 QMT 量化软件|手机线上开通 QMT 详细攻略
- 2026年如何免费开通量化交易权限?QMT、PTrade零费用开通全攻略
- 2026 年最新 QMT 量化交易软件开通全流程!免费开通超详细教程
- 2026 年全网最全 QMT 量化软件详解!QMT 开通门槛 + 详细操作流程
- 2026完整版QMT量化交易攻略:支持券商、开通资金门槛、实操细则全解析
- 2026最新完整版QMT专业量化交易开户全指南:开通条件、流程、费率全解析
- 现在 QMT 与 PTrade 量化交易怎么选,量化免费开通保姆级全攻略(2026 最新)
-
8月可转债强赎密集来袭!最后转股日汇总,手里有的赶紧看
2026-08-24 11:33
-
2026年开户选长城证券、华泰证券还是中金财富好?
2026-08-24 11:33
-
公积金新规9月20日实施!房租提取不卡比例,装修物业费也能提
2026-08-24 11:33


问一问

+微信
分享该文章
