gpt4 book ai didi

Python mplfinance 绘制 hlines 开始/结束日期

转载 作者:行者123 更新时间:2023-12-05 03:26:08 27 4
gpt4 key购买 nike

我有一个问题。我正在尝试在我的 mplfinance 图表中画线。为此,我有以下代码:

levels = [(8531.0, Timestamp('2020-02-27 00:00:00')), (8971.77, Timestamp('2020-02-27 16:00:00')), (8799.0, Timestamp('2020-02-28 22:00:00'))]

mpf.plot(candlesticks,
type='candle',
style='charles',
hlines=levels)

我想在我的图表上画水平线。这些线称为 hlines,它们需要从特定日期开始,因此线的宽度不应该是图表的全宽,但如果开始日期是图表的一半。这条线应该从图表的中间开始到最后。另一件重要的事情是,我希望能够绘制多条线,因此在我的代码中,第一条线位于 8531.0 级别,从 2020-02-27 00:00 开始:008971.77 级别的另一行从 2020-02-27 16:00:00 开始,但我收到以下错误:

Traceback (most recent call last):
File "c:\Users\Alexander\Projects\MyProject\Python\run.py", line 150, in <module>
run()
File "c:\Users\Alexander\Projects\MyProject\Python\run.py", line 128, in run
graph.plot()
File "c:\Users\Alexander\Projects\MyProject\Python\graph.py", line 18, in run
plotCandlestickData(candlesticks[intervalMedium]['candlesticks'])
File "c:\Users\Alexander\Projects\MyProject\Python\graph.py", line 49, in plotData
mpf.plot(candlesticks,
File "C:\Users\Alexander\AppData\Local\Programs\Python\Python310\lib\site-packages\mplfinance\plotting.py", line 389, in plot
config = _process_kwargs(kwargs, _valid_plot_kwargs())
File "C:\Users\Alexander\AppData\Local\Programs\Python\Python310\lib\site-packages\mplfinance\_arg_validators.py", line 322, in _process_kwargs
raise TypeError('kwarg "'+key+'" validator returned False for value: "'+str(value)+'"\n '+v)
TypeError: kwarg "hlines" validator returned False for value: "[(8531.0, Timestamp('2020-02-27 00:00:00')), (8971.77, Timestamp('2020-02-27 16:00:00')), (8799.0, Timestamp('2020-02-28 22:00:00'))]"
'Validator' : lambda value: _hlines_validator(value) },

为什么会出现此错误?一开始我想我应该提供另一个时间戳作为结束时间,但这导致了同样的错误。

当我从值中删除时间戳时,我得到如下图表: enter image description here

但是你看到的那些线都是全宽的,这不是我想要的。我希望每一行都从给定的时间戳开始。我怎样才能做到这一点?

最佳答案

除了竖线和横线,还可以画斜线。可以以元组列表的形式在行中设置此类行的设置。查看official example .

import mplfinance as mpf
import yfinance as yf

candlesticks = yf.download("AAPL", start="2022-01-01", end="2022-04-01")

#levels = [155,160,180]
levels = [[('2022-02-16', 160.), ('2022-03-31',160.0)], [('2022-02-16',175.0),('2022-03-31',175.0)]]

mpf.plot(candlesticks,
type='candle',
style='charles',
alines=dict(alines=levels, colors=['r','b'])
)

enter image description here

关于Python mplfinance 绘制 hlines 开始/结束日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71826974/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com