简介

Phoenix Auto Trendline 会替您画趋势线。趋势线是穿过价格两个转折点的一条直线。

要添加它,请在 KAGAMI 里点击图表顶部的 指标(Indicators)。它在 KAGAMI 分组里,名字是 Phoenix Auto Trendline Black Edition v1.1。在图表上,它的名字显示为 Phoenix Auto Trendline。

这个指标还没有出现在每个账户的指标列表里。

KAGAMI 在自己的服务器上算出这些线。它遵循原始脚本的规则。原始脚本是为 TradingView 写的。

您在图表上看到什么

一根 K 线(也叫蜡烛)是图表上的一小段时间,比如 15 分钟。波段高点 是一根最高价高出周围 K 线的 K 线。波段低点 是一根最低价低于周围 K 线的 K 线。

  • 两个波段高点上方的一条向下倾斜的线。 交易者把它叫作 阻力 线。
  • 两个波段低点下方的一条向上倾斜的线。 交易者把它叫作 支撑 线。
  • 每种同时最多只有一条。
  • 离最新价格更近的那条线是 粗的水蓝色实线。这是 主线。
  • 另一条线是 较细、颜色淡的橙色虚线。这是 副线。
  • 每条线都从它第一个点之前 10 根 K 线处开始。
  • 它延伸到最新 K 线之后 20 根 K 线,伸进右边的空白处。

当一根 K 线收在一条线的另一侧时,这条线就 被突破 了:

  • 它变成一条 颜色淡的水蓝色虚线。
  • 它不再移动。
  • 每种只保留最后一条被突破的线。

一条从未被突破的线,画出后大约 80 根 K 线就会消失。

这个指标不画标签、方框或箭头。只画线。

TSLA 的日线图,上面有三条趋势线。一条粗的水蓝色实线向下穿过两个高点。一条颜色淡的橙色虚线在两个低点下方向上倾斜。一条颜色淡的水蓝色虚线从左下方向上倾斜。TSLA 的日线图,上面有三条趋势线。一条粗的水蓝色实线向下穿过两个高点。一条颜色淡的橙色虚线在两个低点下方向上倾斜。一条颜色淡的水蓝色虚线从左下方向上倾斜。
TSLA,日 K 线,加上 Phoenix Auto Trendline。1 — 主线:两个波段高点上方的一条向下倾斜的线。它是水蓝色实线,因为它离最新价格更近。2 — 副线:两个波段低点下方的一条向上倾斜的线,橙色虚线。两条线都一直延伸到右边的空白处。3 — 一条 被突破 的线。有一根 K 线收在它下方,所以它变淡、变成虚线,并且不再移动。

交易者通常怎么看它

  • 很多交易者把高点上方向下倾斜的线,看作一个比一个低的高点。
  • 他们把低点下方向上倾斜的线,看作一个比一个高的低点。
  • 有些交易者看价格靠近一条线时的表现。
  • 有些交易者留意收盘价是否到了线的另一侧。他们把这叫作突破。
  • 有些交易者留意那条颜色淡的、被突破的线。他们看价格会不会回到这条线。

指标只能描述过去的价格。它无法预知未来。

设置

这个指标没有可以更改的设置。它总是用同样的固定数值:

  • 怎样找到波段,取决于时间周期。时间周期就是每根 K 线代表的时间。
  • 在 15 分钟图表上,波段高点必须高于它之前的 7 根 K 线。它不能低于它之后的 5 根 K 线。
  • 它会记住最近 18 个波段高点和最近 18 个波段低点。
  • 一条线的两个点相隔 5 到 45 根 K 线。
  • 线从第一个点之前 10 根 K 线处开始。它们在最新 K 线之后 20 根 K 线处结束。
  • 主线是粗的水蓝色线。副线是颜色淡的橙色虚线。

什么时候它会误导您

  • 线出现得晚。 只有在一个波段之后又有几根 K 线收盘,才能知道这个波段。在 15 分钟图表上,是 5 根 K 线。
  • 线是由得分选出来的。 在同一张图表上,手工画线的人可能会选另一条线。
  • 横盘的市场。 不允许非常平的线。两个相等的高点永远连不成一条线。所以横盘的市场可能没有线。
  • 快速的走势。 也不允许非常陡的线。急涨或急跌时可能没有线。
  • 一次收盘就算突破。 任何越过这条线的收盘都算,哪怕只越过一点点。价格可能在下一根 K 线就回来。
  • 主线只表示最近。 实线或虚线只说明哪条线离最后一个收盘价更近。它说明不了强弱。
  • 线会消失。 一条没有被突破的线,画出后大约 80 根 K 线就会消失。这并不说明价格的任何事情。
  • 正在形成的 K 线会被忽略。 只有在 K 线收盘时,一切才会更新。
  • 股票图表。 它们在夜里和周末没有 K 线。所以最新 K 线之后的那一段,位置可能和 TradingView 上不一样。

图表是用来学习的,不是建议。请阅读我们的风险免责声明。

一个例子

以 15 分钟图表上的 NASDAQ:AAPL 为例。每根 K 线是 15 分钟。下面的数字是编的。

  1. 假设 AAPL 在 110.00 形成一个波段高点。它高于之前的 7 根 K 线和之后的 5 根 K 线。
  2. 20 根 K 线之后,它在 108.00 形成一个更低的波段高点。
  3. 再过 5 根 K 线,第二个高点得到确认。
  4. 指标给最近高点的每一对打分。假设这一对得分最高。
  5. 它画出一条穿过 110.00 和 108.00 的向下倾斜的线。这条线每根 K 线下降 0.10。
  6. 这条线从第一个高点之前 10 根 K 线处开始。它一直延伸到最新 K 线之后 20 根 K 线。
  7. 后来,这条线在 106.50,一根 K 线收在 106.70。这个收盘价在线的上方。
  8. 这条线变淡、变成虚线,并且不再移动。下一个得到确认的波段会开始新的寻找。

技术细节

这部分写给想了解准确规则的读者。每条规则都只用已收盘的 K 线,一次一根,从 KAGAMI 读取的最早一根 K 线到最新的一根。

计算方法

在每根已收盘的 K 线上,按这个顺序:

  1. 存下在这根 K 线上得到确认的波段高点或波段低点。
  2. 删除太旧的活动线(见“突破和过期”一节)。
  3. 把被收盘价穿过的活动线,变成这一侧最后一条被突破的线。
  4. 如果这根 K 线上确认了一个波段高点或波段低点,就为每个还没有线的一侧寻找新线。
  5. 移动每条活动线的两端:左端移到它第一个点之前 10 根 K 线,右端移到这根 K 线之后 20 根 K 线。
  6. 决定哪条活动线是主线,哪条是副线。

规则用到的词:

  • 一根 K 线的 真实波幅(true range)= high − low、|high − previous close| 和 |low − previous close| 中最大的那个。在最开始的第一根 K 线上,它是 high − low。
  • ATR = 14 根 K 线真实波幅的 Wilder 平均值。第一个 ATR 是前 14 个真实波幅的简单平均值。之后,ATR = (true range + 13 × previous ATR) ÷ 14。前 13 根 K 线没有 ATR。
  • 穿过较早的点 (x1, y1) 和较新的点 (x2, y2) 的 一条线,x 以 K 线计数:price(x) = y1 + (y2 − y1) ÷ (x2 − x1) × (x − x1)。它的 斜率(slope)是每根 K 线 (y2 − y1) ÷ (x2 − x1)。
  • 最小变动价位(tick size)= 最小的价格步长。KAGAMI 对美国股票用 0.01(最后一个收盘价低于 1 时用 0.0001),对其他所有市场用图表价格精度的一个单位。它只在两个除法里作为 ATR 的下限。

波段点

  • 波段高点 是这样一根 K 线:它的最高价严格高于它之前 left 根 K 线的最高价,并且不低于它之后 right 根 K 线的最高价。几个相等的最高价挨在一起时,算第一个。
  • 波段低点 正好相反:它的最低价严格低于之前 left 根 K 线的最低价,并且不高于之后 right 根 K 线的最低价。
  • 波段在它之后第 right 根 K 线收盘时得到确认。
  • 每一侧保留最新的 18 个波段。更早的会被丢掉。

left 和 right 的长度跟着图表的时间周期:

图表时间周期之前的 K 线(left)之后的 K 线(right)
1、5、10、15、30 秒53
1、3、5 分钟53
15 分钟75
30 分钟85
45 分钟、1 小时107
2、3、4 小时128
1 天149
1 周1610
1 个月128

选择一条线

只有在一根确认了波段(高点或低点)的 K 线上,并且这一侧没有活动线时,这一侧才会得到一条新线。这时,会尝试这一侧存下的波段的每一对:一个较早的点和一个较新的点。出现下面的情况时,这一对会被淘汰:

  1. 两个点相隔少于 5 根或多于 45 根 K 线;
  2. 较早的点在这根 K 线之前超过 70 根 K 线;
  3. 对阻力线来说,较新的高点不低于较早的高点;对支撑线来说,较新的低点不高于较早的低点;
  4. 斜率按 |slope| ÷ the larger of (ATR, tick size) 计算(用这根 K 线的 ATR),小于 0.010 或大于 0.22;
  5. 它的触碰少于 2 次,或者实体穿越多于 1 次(见下面)。

触碰和实体穿越,在从较早的点到这根 K 线之间的每根 K 线上计数。容差是 0.20 × ATR,用正在检查的那根 K 线的 ATR。没有 ATR 的 K 线,两样都不算。

  • 阻力线: 当 |high − line| ≤ tolerance 时,这根 K 线算 触碰。当它实体的顶部(开盘价和收盘价中较高的那个)高于 line + tolerance 时,它算 穿越。
  • 支撑线: 当 |low − line| ≤ tolerance 时,这根 K 线算 触碰。当它实体的底部(开盘价和收盘价中较低的那个)低于 line − tolerance 时,它算 穿越。
  • 只有严格位于较早的点和这根 K 线之间的 K 线,才计算穿越。两个点本身就是触碰。
TSLA 的日线图。一条橙色虚线在顶部向下倾斜,周围是一条柔和的橙色带。三根 K 线的最高价伸进这条带里,上面有点。TSLA 的日线图。一条橙色虚线在顶部向下倾斜,周围是一条柔和的橙色带。三根 K 线的最高价伸进这条带里,上面有点。
TSLA,日 K 线,加上 Phoenix Auto Trendline,在画出这条阻力线的那根 K 线上。这条带在线的上方和下方各伸出 0.20 × ATR。带里面的最高价就是一次触碰(一个点)。1 — 较早的波段高点。2 — 较新的波段高点。两个点都算触碰。3 — 带里面的第三个最高价。一共 3 次触碰,并且两个点之间没有 K 线实体高出这条带,所以这一对通过了。这里这条线是副线,因为最新的收盘价离下面的支撑线更近。

每一对通过的都会得到一个得分(见下面)。得分最高的胜出。如果打平,最先找到的那一对胜出:寻找时,较早的点从第二新的波段开始往前取;对每个较早的点,较新的点从最新的波段开始依次取。

一条线一旦画出,在被突破或过期之前,会一直保持它的两个点。之后找到更好的一对,也不会取代它。失去线的一侧会一直空着,直到后来确认的某个波段给出一对能通过的点。

得分

这是原始脚本 Classic Clean 的打分方式。这里 distance = |close − line at this candle| ÷ the larger of (ATR, tick size),since = 从较新的点到这根 K 线的 K 线数。

部分分数
波段跨度the smaller of (gap ÷ 45, 1) × 32 × 1.35,其中 gap = 两个点之间的 K 线数
触碰touches × 18
干净的实体the larger of (30 − body crosses × 15, 0)
接近程度the larger of (12 − distance × 4, 0)
新近程度12 ÷ (since + 1)
斜率扣分减去 slope in ATR ÷ 0.22 × 8
新波段扣分当 since ≤ right + 2 时,减去 18

得分是所有部分的总和。如果一对点里较新的点是刚刚确认的波段,新波段扣分就会压低它的得分。

突破和过期

  • 过期 先检查。从画出它的那根 K 线算起,过了超过 80 根 K 线,活动线就会被删除。过期的线就没有了;它不会作为被突破的线保留下来。
  • 突破: 在这根 K 线上,收盘价高于活动的阻力线,或低于活动的支撑线。没有缓冲:越过多少都算。
  • 被突破的线保持它在前一根 K 线上画出的样子。它的左端留在第一个点之前 10 根 K 线处。它的右端留在突破前那根 K 线之后 20 根 K 线处。
  • 它变成虚线,4 像素,水蓝色 #00BCD4,透明度 55%。它再也不会移动。
  • 每一侧保留一条被突破的线。这一侧的下一次突破会取代它。

主线和副线

  • 两条线都是活动的: 离这根 K 线收盘价更近的是主线,按 |close − line| 计算。如果打平,阻力线是主线。
  • 主线是实线,5 像素,水蓝色 #00BCD4。
  • 副线是虚线,4 像素,橙色 #FF9800,透明度 45%。
  • 只有一条活动线: 它就是主线(实线,5 像素,水蓝色)。
  • 被突破的线保持它们自己的样子。

线的长度

  • 左端在较早的点之前 10 根 K 线处,沿着这条线自己的斜率。
  • 右端在最新的已收盘 K 线之后 20 根 K 线处,沿着同样的斜率。每次收盘,它向右移动一根 K 线。
  • 两端只是为了显示。它们从不改变点或规则。
  • KAGAMI 把 K 线的数量换算成时间。过去的 K 线用它们真实的时间。最新 K 线之后的点,按钟表时间放在 20 个 K 线时长之后。KAGAMI 读取的最早 K 线之前的点,每个往回退一个 K 线时长。

输入项

KAGAMI 不为这个指标显示输入项。它总是用原始脚本的默认值:

原始脚本里的设置KAGAMI 使用的值作用
Pivot ModeAuto by Timeframe波段长度来自时间周期表
Manual Pivot Left · Manual Pivot Right5 · 3(不使用)只在 Manual 模式下使用
Stored Pivots Per Side18每一侧保留的波段数
Extend Line to Left (Bars)10向左的延伸
Extend Line to Right (Bars)20向右的延伸
Trendline DisplayBoth两条活动线都显示
Primary Line Width5主线
Secondary Line Width4副线和被突破的线
Primary Trendline Color水蓝色 #00BCD4主线和被突破的线
Secondary Trendline Color橙色 #FF9800副线
Secondary Line Opacity45当作透明度用:45% 透明

趋势线的引擎本身在原始脚本里也是固定的,任何地方都没有设置:

引擎数值固定为
ATR 长度14 根 K 线
较早的点往回看多远70 根 K 线
两个点之间的间隔5 到 45 根 K 线
需要的触碰至少 2 次
触碰容差0.20 × ATR
允许的实体穿越最多 1 次
允许的斜率每根 K 线 0.010 到 0.22 × ATR
线的寿命80 根 K 线
打分Classic Clean,权重 32(波段跨度)、18(触碰)、18(新波段扣分)

KAGAMI 不提供:

  • 更改上面的任何一个值;
  • Manual 波段长度;
  • Primary Only 显示方式,它会隐藏副线。

数值什么时候会变

  • KAGAMI 只判断已收盘的 K 线。正在形成的 K 线从不算数,所以 K 线形成期间,什么都不会动。
  • 每有一根新的已收盘 K 线,页面就向 KAGAMI 的服务器请求这些线,另外每 60 秒也请求一次。在很短的时间周期上,最多每 2 秒一次。
  • 每次收盘,活动线的右端向右移动一根 K 线。它的点从不移动。
  • 收盘价在两条线之间移动时,主线和副线在任何一次收盘时都可能互换。
  • 只有在确认了波段的 K 线上,才可能出现新线。
  • 活动线可能因为过期而消失,或者因为突破而变成被突破的线。
  • 被突破的线是冻结的,直到它这一侧的下一次突破取代它。
  • KAGAMI 最多读取最新的 2,000 根 K 线,并从其中最早的一根开始执行规则。

时间周期

  • 波段长度跟着时间周期(见“波段点”一节里的表格)。
  • 秒级时间周期(1 秒、5 秒、10 秒、15 秒和 30 秒)只有加密货币才有。股票和外汇从 1 分钟开始。
  • 美国股票的 K 线覆盖交易时间(纽约时间 09:30–16:00)。规则数的是 K 线;夜里和周末没有 K 线。
  • 在股票上,最新 K 线之后 20 个 K 线时长的钟表时间,可能会落到休市的几个小时里。TradingView 则是数市场自己未来的 20 根 K 线。所以右端的位置可能不一样。
  • 在 1 秒图表上,这些线最多每 2 秒刷新一次。

和原始 Pine 脚本的区别

KAGAMI 画出的线,颜色和样式都和用默认设置的原始脚本一样。不同的地方:

  1. 没有设置。 每个输入项都固定为原始脚本的默认值。
  2. 只用已收盘的 K 线。 在 TradingView 里,原始脚本在 K 线形成期间也会运行。在那里,波段、新线和主线的选择,都可能在 K 线收盘之前改变;只有突破要等到收盘。KAGAMI 全部在已收盘的 K 线上进行。
  3. 右端。 它在最新的 已收盘 K 线之后 20 根 K 线处。在 TradingView 里,它在正在形成的那根之后 20 根,也就是再往右一根 K 线。
  4. 用时间代替 K 线。 KAGAMI 按钟表时间来放置最新 K 线之后的点,以及它读取的最早 K 线之前的点(见“线的长度”一节)。TradingView 数的是 K 线,左边也有真实的历史数据。
  5. 历史数据。 KAGAMI 最多读取最新的 2,000 根 K 线。TradingView 常常有更多。
  6. K 线数据。 KAGAMI 用自己的市场数据。一根 K 线上的小差别,就可能改变找到哪些波段和线。
  7. 最小变动价位。 KAGAMI 用自己的规则(见“计算方法”一节)。它只作为 ATR 的下限起作用。
  8. 外观。 KAGAMI 用图表自己的趋势线工具。线宽和虚线看起来稍有不同。您不能选中、移动或编辑这些线,它们也不会被保存。

特殊情况

  • 已收盘的 K 线少于 3 根: 什么都不画。
  • 前 13 根 K 线 没有 ATR,所以在第 14 根 K 线之前不能选出线。
  • 波段太少: 一侧需要两个相隔 5 到 45 根 K 线的波段,并且较早的那个在 70 根 K 线以内。没有它们,这一侧就没有线。
  • 相等的波段: 两个相等的高点永远连不成阻力线,两个相等的低点也永远连不成支撑线。
  • 太平或太陡: 斜率小于每根 K 线 0.010 或大于 0.22 × ATR 时,没有线。
  • 线在错误的一侧: 寻找时不检查它所在的那根 K 线的实体。所以一条新线开始时,最新的收盘价可能已经越过它了。然后它会在下一根收盘越过它的 K 线上被突破。
  • 过期先于突破: 一条线如果在同一根 K 线上既过期又被穿过,就会被删除。它不会作为被突破的线保留。
  • 跳空: 跳空越过这条线时,如果收盘价也在线的另一侧,就算突破。
  • 长时间的等待: 突破或过期之后,一侧可能会空着很多根 K 线。