【问题标题】:Python - issue with plotting CandleStick plotly chartPython - 绘制 CandleStick 图表的问题
【发布时间】:2022-01-07 06:37:48
【问题描述】:

我在 Candlestick plotly 图表上绘制值时遇到问题。 出于某种原因,我得到所有绿色条而不是绿色/红色条。数值上升时为绿色,数值下降时为红色。

这是我的代码,如果你只安装 cbpro,你可以按原样运行:

# Import Dependencies
import time
import cbpro
import pandas as pd
import json
import plotly.graph_objects as go
from datetime import datetime

# Establish Public Client
public_client = cbpro.PublicClient()

# Create start and end time variable
stime = public_client.get_time()
etime = list(public_client.get_time().values())[0]
# Get past transaction for ETH
past_transactions = pd.DataFrame(public_client.get_product_historic_rates(product_id='ETH-USD'))
# Rename the columsn
past_transactions.columns= ["Date","Open","High","Low","Close","Volume"]
# Format the date
past_transactions['Date'] = pd.to_datetime(past_transactions['Date'], unit='s')
# Set the date as index
past_transactions.set_index('Date', inplace=True)
# Sorting values by date
past_transactions.sort_values(by='Date', ascending=True, inplace=True)

# Plot the values on CandleStick plotly chart
fig = go.Figure(data=[go.Candlestick(x= past_transactions.index,
                                            open = past_transactions['Open'],
                                            high = past_transactions['High'],
                                            low = past_transactions['Low'],
                                            close = past_transactions['Close']
                                            )])

fig.show()
past_transactions

我在这里做错了什么?

【问题讨论】:

    标签: python plotly-python


    【解决方案1】:

    这听起来有点奇怪,但请听我说完。我可能在这里错了,但对我来说,这似乎是您的数据集的一个问题。要么数据一路怪,要么以下引用有误:

    open = past_transactions['Open'],
    high = past_transactions['High'],
    low = past_transactions['Low'],
    close = past_transactions['Close']
    

    我的意思是lows 与close 或类似的东西混在一起了。 the data is strange all the way到底是什么意思?我整天都在查看来自各种市场的蜡烛图,而我们在您的图中看到的不能代表任何“正常”市场。从理论上讲,看起来像您的图表绝对没有问题close 在每个时间间隔都高于 open。

    正是我们在你的案例中看到的所有这些“扁平”蜡烛,这意味着所有这些都是low = open。或者在蜡烛图方面:我们没有看到 任何 Lower Shadow

    在任何流动性良好且运作良好的市场中,这种情况不会发生。我可能对此有误,但我并没有错,因为根据你的数据规范,你的情节图正在产生正确的可视化。

    【讨论】:

    • 感谢您的意见。我要检查数据,也许时间间隔和我如何分割数据存在问题。
    【解决方案2】:

    我尝试运行您添加的代码。但是,我确实得到了红色和绿色条。但是红色并不那么明显,因为它们的数量更少而且更小。剧情:

    【讨论】:

    • 是的,所以我得到了相同的情节。应该有更多的红色条,几乎和绿色条一样多。这显然是不对的。它应该是这样的:pro.coinbase.com/trade/ETH-USD
    • 哦!在这种情况下,这似乎是错误的。由于我是该领域的新手,链接中的颜色代表什么?因为,plotly 中的蜡烛图使用基于“收盘价更高(更低)然后开盘价被称为增加(减少)”的颜色。差异可能是因为颜色使用的定义不同?
    • 所以绿色应该存在于任何增长的价值。该值的峰值将是从绿线向上延伸的绿线。这就是价值的高度。红条应该代表一个下降的值,其中红色值的峰值将是一条从红条向下延伸的红线。
    猜你喜欢
    • 2023-03-30
    • 1970-01-01
    • 2020-03-27
    • 2016-08-15
    • 1970-01-01
    • 2021-03-21
    • 2018-12-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多