PTrade获取交易相关函数
注意:代码精度位为3位小数的类型(后台已保护为3位),如ETF、国债;代码精度为2位小数类型,需要在传参时限制价格参数的精度,如股票。
更加详细的调用方法,后续会慢慢整理。
也可找寻博主历史文章,搜索关键词使用方案,比如本文涉及函数etf_basket_order!
感谢关注,咨询免费开通量化回测与获取实盘权限,欢迎和博主联系!
etf_basket_order - ETF成分券篮子下单
etf_basket_order(etf_code ,amount, price_style=None, position=True, info=None)
使用场景
该函数仅支持Ptrade客户端可用、仅在股票交易模块可用
接口说明
该接口用于ETF成分券篮子下单。
注意事项:
无
参数
etf_code : 单支ETF代码,必传参数(str)
amount : 下单篮子份数, 正数表示买入, 负数表示卖出,必传参数(int)
price_style : 设定委托价位,可传入’B1’、’B2’、’B3’、’B4’、’B5’、’S1’、’S2’、’S3’、’S4’、’S5’、’new’,分别为买一~买五、卖一~卖五、最新价,默认为最新价(str)
position : 取值True和False,仅在篮子买入时使用。申购是否使用持仓替代,True为使用,该情况下篮子股票买入时使用已有的持仓部分;False为不使用。默认使用持仓替代(bool)
info : dict类型,成份股信息。key为成分股代码,values为dict类型,包含的成分股信息字段作为key(Mapping[str, Mapping[str, Union[int, float]]]):
- cash_replace_flag -- 设定现金替代标志,1为替代,0为不替代,仅允许替代状态的标的传入有效,否则无效,如不传入info或不传入该字段信息系统默认为成分股不做现金替代
- position_replace_flag -- 设定持仓替代标志,1为替代,0为不替代,如不传入info或不传入该字段信息按position参数的设定进行计算
- limit_price -- 设定委托价格,如不传入info或不传入该字段信息按price_style参数的设定进行计算
返回
创建订单成功,正常返回一个dict类型字段, key为股票代码,values为Order对象的id,失败则返回空dict,如{}(dict[str:str]))
示例
def initialize(context):
g.security = get_Ashares()
set_universe(g.security)
def handle_data(context, data):
#ETF成分券篮子下单
etf_basket_order('510050.SS' ,1, price_style='S3',position=True)
stock_info = {'600000.SS':{'cash_replace_flag':1,'position_replace_flag':1,'limit_price':12}}
etf_basket_order('510050.SS' ,1, price_style='S2',position=False, info=stock_info)