talib 中文文档(九):# Volatility Indicator Functions 波动率指标函数

18 篇文章 ¥99.90 ¥299.90
本文介绍了talib库中的波动率指标函数,包括ATR(平均真实波动幅度)、NATR(归一化平均真实波动幅度)和TRANGE(真正范围)。这些指标用于衡量市场波动性,ATR通过计算一段时间内的价格变动来反映交易者情绪,NATR则是ATR的归一化版本,而TRANGE则计算每日的价格变动范围。了解这些指标有助于交易决策。

Volatility Indicator Functions 波动率指标函数

ATR - Average True Range

函数名:ATR
名称:真实波动幅度均值
简介:真实波动幅度均值(ATR)是
以 N 天的指数移动平均数平均後的交易波动幅度。
计算公式:一天的交易幅度只是单纯地 最大值 - 最小值。
而真实波动幅度则包含昨天的收盘价,若其在今天的幅度之外:
真实波动幅度 = max(最大值,昨日收盘价) − min(最小值,昨日收盘价) 真实波动幅度均值便是「真实波动幅度」的 N 日 指数移动平均数。

特性::

  • 波动幅度的概念表示可以显示出交易者的期望和热情。
  • 大幅的或增加中的波动幅度表示交易者在当天可能准备持续买进或卖出股票。
  • 波动幅度的减少则表示交易者对股市没有太大的兴趣。

NOTE: The ATR function has an unstable period.

real = ATR(high, low, close, timeperiod=14)
import akshare as ak import backtrader as bt import pandas as pd import talib class HybridStrategy(bt.Strategy): params = ( (&#39;momentum_period&#39;, 14), # 动量周期 (&#39;volatility_threshold&#39;, 0.25), # 波动率过滤阈值 (&#39;position_ratio&#39;, 0.1), # 单标的最大仓位比例 (&#39;trading_frequency&#39;, 3) # 高频交易频率 ) def __init__(self): self.ma5 = bt.indicators.SMA(self.data.close, period=5) self.ma20 = bt.indicators.SMA(self.data.close, period=20) self.rsi = bt.indicators.RSI(self.data.close, period=14) self.volatility = bt.indicators.StdDev(self.data.close, period=20) self.trading_days = 0 # 动量轮动核心逻辑 def momentum_strategy(self): # 获取申万行业指数数据(示例:医药生物) industry_data = ak.index_zh_a_hist(symbol="801150", period="daily", adjust="hfq") momentum = (industry_data[&#39;close&#39;].iloc[-1] / industry_data[&#39;close&#39;].iloc[-15] - 1) * 100 # 多周期嵌套:日线与 30 分钟 KDJ 共振 if self.is_kdj_resonance(): # 其他动量筛选逻辑... pass # 多周期 KDJ 共振检测 def is_kdj_resonance(self): # 日线 KDJ daily_k, daily_d = talib.STOCH( self.data.high, self.data.low, self.data.close ) # 30 分钟 K 线数据(AKShare 获取) min30_data = ak.stock_zh_a_hist_min_em( symbol=self.data._name, period="30", adjust="hfq" ) if len(min30_data) < 26: return False min30_k, min30_d = talib.STOCH( min30_data[&#39;high&#39;], min30_data[&#39;low&#39;], min30_data[&#39;close&#39;] ) return (daily_k[-1] > daily_d[-1]) & (min30_k[-1] > min30_d[-1]) # 事件驱动:龙虎榜策略 def event_driven_strategy(self): lhb_data = ak.stock_lhb_detail_em(start_date=pd.Timestamp.now().strftime("%Y%m%d")) hot_stocks = lhb_data[ (lhb_data[&#39;买入额&#39;] > 1e8) & (lhb_data[&#39;卖出营业部数&#39;] < 3) ] # 后续筛选逻辑... # 高频套利:集合竞价选股(AKShare 数据) def detect_auction_signal(self): if self.trading_days % self.params.trading_freque
最新发布
03-15
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

比特量化

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值