# 导入函数库
import jqdata
'''
每股营业利润作为alpha因子,每周一换仓,选在21日均线之上的前30名股票买入;
在dkx金叉且21日均线上买入,dkx死叉或21日均线下穿卖出
'''
# 策略初始化
def initialize(context):
g.security = ['601318.XSHG']#股票池
set_option('use_real_price',True)#价格前复权
set_benchmark('000300.XSHG')
set_order_cost(OrderCost(open_tax=0,close_tax=0.001, open_commission=0.0003, close_commission=0.0003,min_commission=5), type='stock')
g.p1=5
g.p2=10
def handle_data(context,data):
for stock in g.security:
#金叉:如果5日均线大于10日均线且不持仓
#死叉:如果5日均线小于10日均线且持仓
df=attribute_history(stock,g.p2)
print(df)
ma10=df['close'].mean()
ma5=df['close'][-5:].mean()
#if ma10>ma5 and context.portfolio.positions[stock].total_amoun>0:
if ma10>ma5 and stock in context.portfolio.positions:
#death cross
order_target(stock,0)
if ma10<ma5 and stock not in context.portfolio.positions:
#golden cr
海龟交易法
最新推荐文章于 2024-08-26 20:22:58 发布