fengyangsi

思风羊の炒币日记 20220827 投机:平均价值中值定理

教学
OKX:BTCUSDT.P   BTCUSDT Perpetual Swap Contract
前几回说道投机需要估算目前的平均价值并预测平均价值的变化。

理想情况下,成交价围绕平均价值上下波动,能根据成交历史估计平均价值吗?

这涉及到一个问题,我们需要估算的是目前的平均价值,但均线提供给我们的是过去一段时间内的平均成交价。

上图有三根简单移动平均线,周期分别是9、21、36,他们的值是不一样的,对此有几种不同的理解

  • 平均价值一直是 20800,现价围绕平均价值上下波动,目前波动到了 20200
  • 平均价值是 MA21 的值,在逐渐降低,目前是在平均价值以下波动,波动到了 20200

基于以上理解,可以做出不同的反应

  • 现价低于平均价值,预测未来一段时间内的平均价值不会发生变化,买入,等价格回到平均价值附近再卖出
  • 从平均价值的变化趋势看,平均价值可能会继续下降,所以卖出
  • 从平均价值的变化趋势看,已经从原来的连续下降转变为水平静止,不再下跌了,未来可能还会上升,买入

只有实践才能证明以上哪种观点是正确的,但是为了盈利,我们必须在事前就估算出每种情况的概率各式多少,以此制定交易计划。

说到概率,让我们先研究一下均线的原理,价格围绕平均价值上下波动,这并不能说明价格高于和低于平均价值的概率都一样是 1/2,假如价格是上上下下随机跳跃,那也没必要做交易了,从经验中我们发现经过某些特定的价格序列后,接下来的价格往往是有迹可循的。

举个简单的例子,平均价值是 1,现价是 5,下一根 k 线价低于平均价值的概率是 1/2 吗?显然不是,固定时间内不可能产生无限次交易,使价格收敛于平均价值,也就是说,跌不到那么快,所以下一根 k 线价低于平均价值的概率是远远小于 1/2 的。

但是,价格相对于平均价值的总的的上涨幅度和下跌幅度是一致的(以下假设平均价值不变),这样才能互相抵消,回到平均价值附近

既 累加(价格 - 平均价值) = 0

设平均价值为 M,共有 N 个价格 P1 至 Pn

(P1 - M) + (P2 - M) + ... + (Pn-1 - M) + (Pn - M) = 0
P1 + P2 + ... + Pn-1 + Pn - M * N = 0
P1 + P2 + ... + Pn-1 + Pn = M * N
M = (P1 + P2 + ... + Pn-1 + Pn) / N

我们发现 M 就是 P 的平均数,也可以成为中值,之所以用中值是因为他和其他中值定理一样暗示了路径无关性

当平均价值不变时,理想情况下无论价格以怎样的路径运行,(价格数量足够多时),平均值就是平均价值

现在设价格之间的差价为 D1 至 Dn-1,其中 Dn-1 = Pn - Pn-1

P1 + P2 + ... + Pn-1 + Pn = M * N
P1 + (P1 + D1) + ... + (P1 + D1 + ... + Dn-1) = M
NP1 + (N - 1)D1 + (N - 2)D2 + ... + Dn-1 = M * N
(N - 1)D1 + (N - 2)D2 + ... + Dn-1 = (M - P1) * N
N(D1 + D2 + D3 + ... + Dn-1) - D1 - 2D2 - 3D3 - ... - N-1Dn-1 = (M - P1) * N
N(D1 + D2 + D3 + ... + Dn-1) = (D1 + 2D2 + 3D3 + ... + N-1Dn-1) + (M - P1) * N
= (P2-P1) + 2(P3-P2) + 3(P4-P3) + ... + N-1(Pn - Pn-1) + (M - P1) * N
= -P1 + (P2 - 2P2) + (2P3 - 3P3) + ... + (N-2Pn-1 - N-1Pn-1) + N-1Pn + (M - P1) * N
= -(P1 + P2 + ... + Pn-1) + N-1Pn + (M - P1) * N
= -(P1 + P2 + ... + Pn-1) - Pn + Pn + N-1Pn + (M - P1) * N
= -(P1 + P2 + ... + Pn-1 - Pn) + N * Pn + (M - P1) * N
= -N * M + N * Pn + (M - P1) * N
= 0

由于 N 不等于 0
所以 D1 + D2 + D3 + ... + Dn-1 = 0

也就是说价格之间的差价的和应该是 0

如果和大于 0,那么价格的平均数就会大于平均价值
相反,和小于 0 时,价格的平均数会小于平均价值

也就是说,我们在不知道平均价值,只知道价格序列的的情况下判断出了价格是高于,还是低于平均价值

让我们马上根据此原理开发一个指标试试。

代码如下

//@version=5
indicator(title="思风羊-平均价值", shorttitle="平均价值")
length = input.int(21, "分析周期", minval=1)
source = input(close, "分析数值")
plot(ta.sma(ta.change(source), length))

(效果见图最下指标)

将这个指标的数值进行标准化,使其范围为 0 到 100 之间,就成了 RSI —— 相对强弱指标
免责声明

这些信息和出版物并不意味着也不构成TradingView提供或认可的金融、投资、交易或其它类型的建议或背书。请在使用条款阅读更多信息。