钱德动量震荡指标和 InfluxDB
作者:Anais Dotis-Georgiou / 产品, 用例, 开发者
2019年6月5日
导航至
我正坐在朋友的客厅里。他穿着白色亚麻裤,盘腿而坐,双手随意地放在膝盖上,轻轻地点着头。他的客人是一支相当成功的流行乐队的成员,他们正在讲述他们最近一次乘坐帆船、神奇的小住宅校车或某种时髦的交通工具环游欧洲和亚洲的冒险经历。我注意到那里唯一安静的家伙。我对他唯一的了解是,他应该是一位音乐制作大师。他正全神贯注地敲击键盘,专注于屏幕。我问他在做什么,他轻轻地回答说:“我正在创建一个 python 脚本来执行自动化比特币交易策略”。我不知道他的机器人是否产生了良好的回报,也不知道他是否完成了它。然而,真正听到这一连串流行语,并看到这些词语随意地从他嘴里说出来,给我留下了深刻的印象——总有一天我也必须玩这个游戏。好吧,我现在来了。
InfluxDB 作为开发交易策略的学习工具
我偶然发现了 Alpaca,这家免佣金的 REST API 股票经纪公司。它非常酷。您可以选择模拟交易或实盘交易。此外,该文档还附带了示例算法和如何在 Heroku 上部署的说明,因此您实际上可以免佣金地实施您的交易。
然而,我很快发现他们的示例算法非常基础。在致力于投资策略之前,我需要熟悉更多的金融分析工具,并评估各种算法的长期表现。最终,我也想监控我的算法的成功率。幸运的是,InfluxDB 可以提供帮助。
熟悉 InfluxData 的人听到 InfluxDB 可能会想到“DevOps 监控”或“物联网 (IoT)”。但是,InfluxDB 也可以成为希望启动“家庭”金融服务项目的人的绝佳工具。InfluxQL,InfluxData 用于与 InfluxDB 交互的类 SQL 查询语言,具有多个开箱即用的技术分析函数,可以帮助您识别市场特征。钱德动量震荡指标就是其中之一。
什么是钱德动量震荡指标?
钱德动量震荡指标 (CMO) 是由 Tushar Chande 于 1994 年发明的一种技术指标。具体来说,它是一种动量震荡指标。它是近期内所有涨跌总和之差与价格变动总次数之比。
CMO = (H - L)/(H + L) *100
其中 H 和 L 分别是 N 个周期内较高和较低收盘价的总和。
如何在 InfluxDB 中使用钱德动量震荡指标
为了查看我的数据,我使用以下 InfluxQL 查询
SELECT "Close" FROM "AAPL"."autogen"."price" WHERE time > :dashboardTime:
<figcaption> AAPL 过去一年的收盘价数据,在 Chronograf 中可视化</figcaption>
要应用 CMO,如 文档中所述,我提交
SELECT CHANDE_MOMENTUM_OSCILLATOR("Close", 20) FROM "AAPL"."autogen"."price" WHERE time > :dashboardTime:
我将周期设置为 9。通常,投资者在分析收盘价时会使用 7-10 的周期。
<figcaption> 在 Chronograf 中使用 InfluxDB 可视化的钱德动量震荡指标(蓝色)和 AAPL 收盘价(绿色)</figcaption>
何时使用钱德动量震荡指标买入或卖出
蓝线表示 CMO。当它超过 +50 时,股票被认为是超买,当它跌破 -50 时,股票被认为是超卖。
例如,在 2019 年 1 月初,CMO 跌破 -50,股票超卖。紧随其后,我们看到看涨行为。另请注意,在 CMO 线穿过 -50 水平之前,CMO 和 AAPL 收盘价的斜率均为负。当 CMO 和价格数据的斜率一致时,可以确认 CMO 是一个良好的指标。
<figcaption> 正向或看涨背离的示例,其特征在于负价格趋势和正 CMO 趋势</figcaption>
但是,当斜率相反时,这称为背离。背离可能预示着潜在的反转。负背离发生在 9 月份。AAPL 价格持续上涨,但 CMO 虽然高于 50+,但相对于 8 月下旬有所下降。负背离由正价格趋势和负 CMO 趋势定义。负背离可能表明 CMO 在长期内可能不可靠,并预期会出现看跌行为。这在 10 月初得到证实,当时 CMO 在 +50 水平以上达到峰值,但价格随后下跌。
<figcaption> 负向或看跌背离的示例</figcaption>
您还可以将移动平均线 (MA) 与长期 CMO 结合使用,作为另一个确认指标。我使用以下查询计算了周期为 20 天的 CMO 的 9 日 MA
SELECT MOVING_AVERAGE("CMO_20", 9) FROM (SELECT CHANDE_MOMENTUM_OSCILLATOR("Close", 20) AS "CMO_20" FROM "AAPL"."autogen"."price" WHERE time > :dashboardTime:)
<figcaption> APPL 收盘价(蓝色)、20 日 CMO(绿色)和 MA(粉色)</figcaption>
MA 充当信号线。当 CMO 穿过 MA 时,它被解释为看涨信号。9 月初,我们看到相反的情况发生。CMO 跌破 MA,反而指示看跌信号。这证实了我们对上面观察到的背离的解释。
结论
InfluxQL 还有其他几个技术分析函数,我很高兴看到其余函数能教给我什么,以及我将如何应用它们。与往常一样,如果您有任何问题,请在社区网站上发布,或在 Twitter 上 @InfluxDB 给我们发推文。