策略实现代码
完整的Python实现
def initialize(context):
set_benchmark('000300.XSHG')
set_option('use_real_price', True)
set_order_cost(OrderCost(close_tax=0.001, open_commission=0.0003, close_commission=0.0003, min_commission=5), type='stock')
run_daily(market_open, time='open', reference_security='000300.XSHG')
g.security = '000001.XSHE'
def market_open(context):
security = g.security
close_data = get_bars(security, count=5, unit='1d', fields=['close'])
MA5 = close_data['close'].mean()
current_price = close_data['close'][-1]
cash = context.portfolio.available_cash
if (current_price > 1.01*MA5) and (cash > 0):
order_value(security, cash)
elif current_price < MA5 and context.portfolio.positions[security].closeable_amount > 0:
order_target(security, 0)
3 / 5