双均线策略

该博客介绍了如何实现双均线交易策略,包括计算长期和短期均线,判断买入与卖出信号,绘制交易点,计算持仓收益及交易成本,并对策略进行年化收益、波动率、夏普比率和最大回撤等绩效指标的评估。通过Python和pandas库完成整个过程。
摘要由CSDN通过智能技术生成

思路:

1.导入需要的包

2.设置变量回测开始时间,股票代码名称

3.定义load_ohlc_from_local读取本地文件600519.csv,设置日期为索引,以DataFrame的格式返还

4.设置变量长期均线,短期均线并计算它们各自的平均值

5.计算做多信号,判断如果短期均线上穿长期均线则产生买入信号1,若短期均线下穿长期均线,则产生卖出信号-1,其他时候为无信号0

6.创建用于标记做多位置的标记,根据信号得到买入和不买入的位置索引

7.绘制入场和出场点,红色三角形为买入点,绿色星号为不买入点,并绘制短期和长期移动平均线

8.计算昨日的持仓状态和当日的收益计算

9.根据买入和卖出信号计算交易成本包含了印花税,滑点,佣金

10.计算年化收益,波动率和夏普比率,用于评估策略表现

11.计算最大回撤找到资产净值曲线最高最低点之间的最大回撤

12.绘制累计收益和最大回撤曲线图

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']


bt_start_date = '2018-05-01'
stk_code, stk_name ='sh600519',  u'贵州茅台'

def load_ohlc_from_local():
    df = pd.read_csv('600519.csv')
    df['datetime']=pd.to_datetime(df['da
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值