量化策略——海龟混合双通道策略

本文主要是利用海龟交易策略进行量化交易策略的构建,同时用均线策略,布林带策略等经典策略构建第二条通道进行策略改善。

数据来源:
https://tushare.pro/register?reg=403436
不知道如何编写代码的也可以直接进入数据工具接口生成即可Tushare数据工具,非常方便。

首先先利用API接口获得沪深300近10年数据,然后进行数据清理,构造布林带策略和均线均线策略的组件。

import math
import tushare as ts
import pandas as pd
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import talib


matplotlib.rcParams['axes.unicode_minus']=False
plt.rcParams['font.sans-serif']=['SimHei']
ts.set_token('af3...')#这里是token码 获取地址  https://tushare.pro/register?reg=403436(需注册)
pro = ts.pro_api()

df=pro.index_daily(ts_code='399300.SZ', start_date='20100101', end_date='20211010')
df=df.sort_index()
df.index=pd.to_datetime(df.trade_date,format='%Y-%m-%d')#设置日期索引
df = df[::-1]
close = df.close
ret = df['close'].pct_change()

close20 = talib.MA(np.array(close),timeperiod=20)
atr1 = talib.ATR(df['high'].values,df['low'].values,df['close'].values,timeperiod=20)
atr = pd.DataFrame(atr1)
atr.index=pd.to_datetime(df.trade_date,format='%Y-%m-%d')
atr = atr.fillna(0)
mv = talib.MA(np.array(df.close),timeperiod=20)
close_bup = mv+2*atr1
close_bdw = mv-2*atr1

#实现最大回撤

def MaxDrawdown(return_list):
    
    # 1. find all of the peak of cumlative return 
    maxcum = np.zeros(len(return_list))
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值