0013-量化第二天:QMT—收益统计与函数封装交易信号

目录

一、模型介绍

二、可学习部分

1.记录买点,得出当前市值

2.统计利润

3. 计算持仓股,在图中输出基本统计值

4.函数封装交易信号 

三.代码逐行注释


一、模型介绍

以价格逻辑进行交易,并生成基本的收益统计,其中,交易信号 :

价格超过20天最高价,买入

价格跌破60日均线,卖出

				if data_high_pre[k][-2] > max(data_high[k][:-2]):
					buy[k] = 1     #昨天价格超过20日最高价,给买入字典赋值1(加入买入备选)
				elif data_high_pre[k][-2] < np.mean(data_close60[k][:-2]):
					sell[k] = 1              #低于60日均线,加入卖出备选

二、可学习部分

1.记录买点,得出当前市值

order_shares(k,order[k]*100,'fix',tmp[k][-1],ContextInfo,ContextInfo.accountID)  #开盘价下单
				ContextInfo.buypoint[k] = tmp[k][-1] #把最近开盘价给买点字典
				ContextInfo.money_distribution[k] -= 0.0003*order[k]*100*tmp[k][-1]
                #计算市值,要买的初始资金-手续费

2.统计利润

		profit = sum(ContextInfo.money_distribution.values())/ContextInfo.capital - 1
        #所有市值加起来/初始市值就是现在净值了

3. 计算持仓股,在图中输出基本统计值

		ttt = 0
		for v in list(ContextInfo.holdings.values()):
			if v > 0:  #持有股数不为零
				ttt += 1
		ContextInfo.paint('收益',profit,-1,0)
		ContextInfo.paint('对冲收益',profit-net_hs300-1,-1,0)
		ContextInfo.paint('对冲收益净值',profit+1-net_hs300,-1,0)
		ContextInfo.paint('个股',ttt,-1,0)
  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值