聚宽源码37

落爺英雄遲暮 提交于 2019-12-16 09:14:25

原文策略源码如下:

因子分析

import pandas as pd
import jqdata

def initialize(context):
g.index=‘000300.XSHG’
set_option(‘use_real_price’, True)
set_order_cost(OrderCost(open_tax=0, close_tax=0, open_commission=0, close_commission=0, close_today_commission=0, min_commission=0), type=‘stock’)
set_benchmark(‘000300.XSHG’)

def calalpha(context):
stock_list=get_index_stocks(g.index)
dt=context.previous_date
df = get_price(stock_list,end_date=dt,count=1,fields=[‘money’])
df = df[‘money’].T
df.columns=[‘alpha’]
result=df.sort([‘alpha’],ascending=False)
return result

def before_trading_start(context):
result=list((calalpha(context)[‘alpha’].iloc[0:40]).keys())
g.result=result

def handle_data(context, data):
tobuy_list=g.result
holdings=context.portfolio.positions.keys()
for stock in holdings:
if stock not in tobuy_list:
print(’----------’)
print(stock,‘Shorting’)
order_target_value(stock,0)
else:
print(’----------’)
print(stock,‘Longing’)
cash=context.portfolio.cash
num=len(tobuy_list)
for eachsec in tobuy_list:
order_value(eachsec,int(cash/num))

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!