7. 仓位记录
将持仓账户信息用图显示
#coding=utf-8
import rqalpha
from rqalpha.api import *
import os
def init(context):
context.s1 = '000001.XSHE'
context.s2 = '600036.XSHG'
def handle_bar(context, bar_dict):
record(context, bar_dict)
if context.s1 not in context.portfolio.positions:
order_target_percent(context.s1, 0.5)
if context.s2 not in context.portfolio.positions:
order_target_percent(context.s2, 0.2)
#记录当前已占用的资金
def record(context, bar_dict):
pos_s1 = context.portfolio.positions[context.s1].quantity
pos_s2 = context.portfolio.positions[context.s2].quantity
price_s1 = context.portfolio.positions[context.s1].avg_price
price_s2 = context.portfolio.positions[context.s2].avg_price
capital = pos_s1*price_s1+pos_s2*price_s2
plot("capital", capital)
config = {
"base": {
"start_date": "2017-01-03",
"end_date": "2017-06-01",
"accounts": {'stock':1000000},
"benchmark": "000300.XSHG",
"strategy_file_path": os.path.abspath(__file__)
},
"extra": {
"log_level": "verbose",
},
"mod": {
"sys_analyser": {
"report_save_path": '.',
"enabled": True,
"plot": True
}
}
}
rqalpha.run_func(init=init, handle_bar=handle_bar, config=config)