python:海龟交易法则 画唐奇安通道

本文介绍了如何使用Python实现海龟交易法则,包括入场、加仓、止损和离场规则,结合唐奇安通道进行趋势跟踪。通过tushare库获取股票数据,展示了600566的K线图和关键指标分析。

回忆一下海龟交易法则的策略:
入场条件:当收盘价突破20日价格高点时,买入一单元股票;
加仓条件:当价格大于上一次买入价格的0.5个ATR(平均波幅),买入一单元股票,加仓次数不超过3次;
止损条件:当价格小于上一次买入价格的2个ATR时清仓;
离场条件:当价格跌破10日价格低点时清仓。
这里的20日价格高点和10日价格低点构成唐奇安通道,所以海龟交易法则也可以理解成通道突破的趋势跟踪。

stock_dc.py

# coding: utf-8
import os, sys
#import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import tushare as ts

if len(sys.argv) ==2:
    code = sys.argv[1]
else:
    print('usage: python stock_dc.py stockcode ')
    sys.exit(1)

if len(code) !=6:
    print('stock code length: 6')
    sys.exit(2)

# help(ts.get_k_data) 了解参数
df = ts.get_k_data(code, start='2021-01-01')
#print(df.head())
# 10日移动均线
df['ma10'] = df['close'].rolling(window=10).mean()

# 唐奇安通道(Donchian Channel)取过去20日的最高价,10日的最低价
df['up20'] = df['high'].shift(1).rolling(window=20).max()
df['down'] = df['low'].shift(1).rolling(window=10).min()
#print(df.head())
# 取样 2022年以后的数据
d2 = df[ df.date >'2022-01-01']
print(d2.tail())
d2.index = p
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值