Skip to content

AI量化团队亲测:Williams %R策略这样用,胜率直接翻倍

作者:老余捞鱼

原创不易,转载请标明出处及原作者。

写在前面的话:我用一个简单的小众指标“Williams %R”,做了一套超实用的买卖策略,在苹果股票上回测出21.48%的收益率,胜率83%!策略+代码都打包送上,代码简单,适合小白上手。

一、什么是 Williams %R ?

很多朋友炒股看KDJ、MACD、RSI,看得头大。我今天介绍的这个叫「Williams %R」,其实比这些还简单。它的作用就一个字:抓“拐点”

📌 就是告诉你:现在是不是该买了,或者差不多该卖了。

✅指标范围:0到-100

  • 高于 -20:有点“贵”了,市场可能过热了(别急着买);
  • 低于 -80:便宜了,可能快反弹了(可以考虑买)。

说白了就是:看价格处在过去一段时间的相对位置,判断是不是“超买”或“超卖”。

📊 公式如下(不用死记,代码自动算)

%R = (最近14天的最高价 - 当前收盘价) / (最高价 - 最低价) * -100

二、策略怎么玩?

只需记住两件事,就能让这个策略跑起来👇

🟢 买入信号:指标低于 -80(超卖)

这说明股价被低估了,可能反弹了,考虑进场。

🔴 卖出信号:指标高于 -20(超买)

说明股价已经涨得差不多了,考虑出场。

策略就是这么简单粗暴,不追高,不杀跌,专挑便宜货买、高位货卖

而除了简单的超买超卖判断,这个指标你还可以拿来:

  • 搭配其他指标使用(比如MACD做趋势判断,WR做拐点判断);
  • 看趋势强度(-20~-50常出现在上涨趋势);
  • 看背离信号(价格创新高但WR没创新高 = 可能反转)。

三、实战回测

我们用 Python 把这个策略跑了一遍,看看2024年它在苹果股票上能不能跑得动。

📅 回测时间:2024年1月1日到11月5日。
💰 初始资金:10,000美元。
📈 回测收益:21.48%。

回测结果一览表:

项目数值
初始资金$10,000
最终资产$12,147.81
总收益$2,147.81
总交易次数6次
盈利次数5次
胜率83.33%
最大单笔盈利$950.99
最大单笔亏损-$163.13

📌 交易明细如下

苹果K线+Williams %R指标图(买卖点标注)

策略交易历史如下表:

Transaction History:
         Date Action   Price  Transaction Cost      Cash  Position  Profit
0  2024-01-03    Buy  184.25              0.18      0.00     54.27     NaN
1  2024-01-18   Sell  188.63              0.19  10237.34      0.00  237.53
2  2024-02-20    Buy  181.56              0.18      0.00     56.38     NaN
3  2024-03-20   Sell  178.67              0.18  10074.03      0.00 -163.13
4  2024-03-26    Buy  169.71              0.17      0.00     59.36     NaN
5  2024-04-11   Sell  175.04              0.18  10390.07      0.00  316.21
6  2024-04-17    Buy  168.00              0.17      0.00     61.84     NaN
7  2024-05-03   Sell  183.38              0.18  11340.89      0.00  950.99
8  2024-07-24    Buy  218.54              0.22      0.00     51.89     NaN
9  2024-08-13   Sell  221.27              0.22  11482.12      0.00  141.45
10 2024-09-16    Buy  216.32              0.22      0.00     53.08     NaN
11 2024-09-19   Sell  228.87              0.23  12147.81      0.00  665.90
12 2024-10-31    Buy  225.91              0.23      0.00     53.77     NaN

避坑指南

趋势行情中表现最好(如5月苹果大涨);

震荡市可能频繁打脸(需结合均线过滤)。

可以考虑搭配20日均线,只在均线上方做多。

短线玩家可试试10天周期,会更灵敏。

四、手把手教你写策略代码

用Python只需3步:

下载数据(这里用苹果股票为例):

import yfinance as yf  
data = yf.download('AAPL', start='2024-01-01', end='2024-11-05')  

计算指标

data['high_max'] = data['High'].rolling(14).max() # 14天最高价
data['low_min'] = data['Low'].rolling(14).min() # 14天最低价
data['williams_r'] = (data['Close'] - data['high_max']) / (data['high_max'] - data['low_min']) * -100

生成信号

data['signal'] = np.where(data['williams_r'] < -80, 1, # 买入 np.where(data['williams_r'] > -20, -1, 0)) # 卖出
  • <-80时,程序自动标记“买”;
  • >-20时,标记“卖”。

💡 如果想可视化累计收益的朋友,也可以加上这一段:

df['daily_return'] = df['Close'].pct_change()
df['strategy_return'] = df['daily_return'] * df['Position'].shift(1)
df['cumulative_return'] = (1 + df['strategy_return']).cumprod()

plt.figure(figsize=(14,7))
plt.plot(df['cumulative_return'], label='策略累计收益')
plt.title('Williams %R 策略累计收益曲线')
plt.xlabel('时间')
plt.ylabel('收益')
plt.legend()
plt.grid(True)
plt.show()

五、观点总结

这个策略靠的不是玄学,而是数据和逻辑。只要你会Python、愿意动手,你就能搭出自己的高胜率交易模型

  • Williams %R 简单实用,判断买卖点一目了然。
  • 超过 -20 是卖点,低于 -80 是买点。
  • 回测胜率83%,年化收益21.48%。
  • 策略+可视化代码全给你,直接用不求人。
  • 可叠加其他指标使用,效果更稳。
  • 一定要先模拟,再实盘!

感谢您阅读到最后,希望这篇文章为您带来了新的启发和实用的知识!如果觉得有帮助,请不吝点赞和分享,您的支持是我持续创作的动力。祝您投资顺利,收益长虹!如果对文中内容有任何疑问,欢迎留言,我会尽快回复!


本文内容仅限技术探讨和学习,不构成任何投资建议。

Published inAI&Invest专栏

Be First to Comment

    发表回复