期权量化学习(4)——K线及指标
找到操作的标的合约,我们就可以调用其历史K线,进行判断分析。
获取基本信息 GetContractInfo (code) 返回一个字典,包含该code的所有信息。
其中期权合约信息的key值有行权比率、名称、期权标的、合约乘数、行权价格、行权方式(int型):0为欧式1为美式;期权类型:0为股票期权,1为指数期权,2为期货期权;
行权到期日(datetime型)、合约存续(int型,65-当日新挂牌69-存续68-当日摘牌48-未上市49-已退市)、合约调整(int型,48-近期未做调整,49-最近10个交易日内合约发生过调整。)、期权种类(int型):0为认购期权,1为认沽期权。
期货合约信息的key值有品种代码、合约乘数、上市日期、名称、最后交易日。
指数信息的key值有名称、基准点数、上市日期。
1 2 | info1 = GetContractInfo(g.atmopc) print (info1) |
1 2 | #订阅日K线用来驱动onbar事件 SubscribeBar(g.atmopc,BarType.Day) |
订阅K线数据—SubscribeBar (code,BarType),订阅品种K线数据,用来驱动OnBar事件。
每天的行情初始化事件,系统会自动退订掉之前订阅的K线,需要重新订阅。
K线类型
K线更新事件OnBar (context, code, type),当有新的一根K线出现时,调用该事件。每当有新的一根K线产生时触发。根据订阅K线的频率触发。
实时行情事件OnQuote (context, code),当有品种行情过来时,调用该事件。按天回测时,每个订阅过行情的合约每天触发会一次,在收盘时触发(一般是交易日的15:00)。
两者都需要提前使用SubscribeQuote订阅行情才能触发,需要在行情初始化事件里SubscribeQuote订阅行情。每天新的行情初始化事件触发时,系统会自动将前一天订阅的行情退订掉,所以每一天都需要重新退订。
定时器OnTimer (context, timerid),在时间达到设置的定时时间时调用;需要配合SetTimer函数使用。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # 在k线出现的时候,如果没持仓就买开,如果有就平仓 def OnBar(context,code,bartype): posi = context.myacc.GetPositions() #获取所有持仓 if len (posi) = = 0 : #下单买开,2表示最新价 print ( "买开" ) QuickInsertOrder(context.myacc,g.atmopc, 'buy' , 'open' ,PriceType(PbPriceType.Limit, 2 ), 10 )<br> elif len (posi) > 0 : opcode = posi[ 0 ].contract print ( "卖平" ) #下单卖平,16表示对手价 QuickInsertOrder(context.myacc,opcode, 'sell' , 'close' ,PriceType(PbPriceType.Limit, 16 ), 10 )<br> UnsubscribeBar(g.atmopc,BarType.Day) |
获取所有的持仓信息—Account.GetPositions (option),返回一个list,包含符合查询条件的所有持仓对象
快捷下单QuickInsertOrder (account,code,direction,open_or_close,price_type,volume,today_first=True),其中有等号的参数是可不填的,等号后是默认值
PbPriceType 下单价位类型,用于下单、追单时指定价位。可以用于InsertOrder,QuickInsertOrder,等各处下单函数中价格的位置。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)