在蜡烛图上添加信号

Posted

技术标签:

【中文标题】在蜡烛图上添加信号【英文标题】:Adding signals on the candle chart 【发布时间】:2021-09-03 04:38:07 【问题描述】:

我想在我的图表上绘制信号有没有办法在烛台上做到这一点? 我做了以下事情并被卡住了:(

!pip install yfinance
!pip install mplfinance
import yfinance as yf
import mplfinance as mpf
import numpy as np 
import pandas as pd 

df=yf.download('BTC-USD',start='2008-01-04',end='2021-06-3',interval='1d')

buy=np.where((df['Close'] > df['Open']) & (df['Close'].shift(1) < df['Open'].shift(1),1,0)

fig = plt.figure(figsize = (20,10))
mpf.plot(df,figsize=(20,12),type ='candle',volume=True);

# any idea how to add the signal?

【问题讨论】:

【参考方案1】:
import yfinance as yf
import mplfinance as mpf
import numpy as np 

df = yf.download('BTC-USD', start='2008-01-04', end='2021-06-3', interval='1d').tail(50)

buy = np.where((df['Close'] > df['Open']) & (df['Close'].shift(1) < df['Open'].shift(1)), 1, np.nan) * 0.95 * df['Low']

apd = [mpf.make_addplot(buy, scatter=True, markersize=100, marker=r'$\Uparrow$', color='green')]

mpf.plot(df, type='candle', volume=True, addplot=apd)

我刚刚添加了.tail() 以获得更好的可视化效果。

输出:

【讨论】:

感谢您的回复,出于某种原因,我的箭头向下。我会附上图片【参考方案2】:

您使用“制作附加图”api:mpf.make_addplot(data,**kwargs) 在图上放置信号。您传递给make_addplot 的数据必须与原始烛台数据框的长度相同(以便 mplfinance 可以将其与烛台适当地对齐)。如果您不想在每个位置绘制信号,您只需使用 nan 值填充数据,除了您确实想要绘制信号的位置。

然后使用addplot kwarg 将ap = mpf.make_addplot() 的返回值传递给mpf.plot(df,addplot=ap)

你可以在this tutorial on adding your own technical studies to plots看到很多例子。

花时间(可能 10 分钟左右)仔细阅读整个教程。这将是值得度过的时光。

【讨论】:

以上是关于在蜡烛图上添加信号的主要内容,如果未能解决你的问题,请参考以下文章

GNN笔记:图信号处理(Graph Signal Processing)

信号系统概论知识点

SignalTap II 中抓到的信号和实际程序中描叙的反相,高低电平正好反过来了,这是怎么回事儿呢

仅当两个连续的交叉点在同一方向时才触发信号

语音信号的短时傅里叶变换 怎样看懂语谱图

在matlab中绘制具有不同轴和限制的两个信号