问题标签 [ohlc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
78 浏览

python - 基于动态事件的 Python 算法构建 n 个 OHLC 柱

假设一个给定的迭代器产生一个浮点值和一个时间戳或等价物,我有一个处理器类接收该事件并使用新值更新自身,将这些存储在类似双端队列的数据结构中。

从那个双端队列中,我们可以假设很容易获得第一个/最后一个/最小值和最大值(尽管一种优雅而快速的方法可能具有挑战性,但这不是这里的问题)。我们称其为 OHLC 条。

记住以下约束,如何存储和动态更新最后的 n * OHLC 条:

  • OHLC 的持续时间固定为一个参数,并且对于所有 OHLC 都是相同的
  • 大小 (n) 作为 OHLC 的数量是一个固定的整数参数
  • 事件到达时间是随机的且间隔不均匀,而且可能会丢失一些数据点(即我们不会收到任何更新的时间间隔)
  • 目标是“在线”计算它:我认为它可以在熊猫/重采样中轻松完成,但其中的乐趣在哪里。
  • 我目前正在用 Python 编码

到目前为止,我有一个基于以下函数的固定持续时间窗口构建器类

还有一个双端队列数据结构类型,它允许我使用这种算法来存储将服务于生成 1 个 OHLC 条的值。

但是,我被困在如何在每次更新时存储这些让我们说 10 个 OHLC 条,并在每个将触发更新功能的新事件中使整个事物“滑动”。

0 投票
1 回答
51 浏览

python - 如何扩大 OHLC 图表的中间部分,情节?中间部分由 Open & Close 值组成

我正在尝试使用 plotly 制作 OHLC 图表,并且我成功地做到了。我正在使用 Yfinance 库来获取数据并为某些股票绘制 OHLC 图表。我为它编写的代码。

从此代码制作的图表在此处输入图像描述

我想知道我们能否扩大 OHLC 图的中间部分。就像下图一样。我的客户强迫我做到这一点,在花了几个小时在情节文档中我没有找到任何东西。我希望你们中的一些人可以帮助我。提前致谢 。如果有任何替代方法可以实现这一点,您也可以与我分享。

在此处输入图像描述

0 投票
2 回答
264 浏览

python - 将 OHLC 数据分组为多个时间间隔并获取 Pandas 中的值

我在下面附加了一个 CSV 文件,我需要将 1 天的时间分成 4 个间隔,即:9:15-10:00、10:01-12:00、12:01-14:30 和 14:31 -15:30 并获取“Open”的值作为每个间隔的第一个值,“High”作为最大值,“low”作为最低值,“close”作为间隔的最后一个值,“volume”作为一个区间内所有体积值的总和。每天都要做同样的程序。我曾尝试对特定间隔使用 group by 函数,但它给出了整个 csv 文件的值。我也尝试过重新采样,但它对我不起作用。这是我尝试过的代码。

在此处输入图像描述

还有一个:

0 投票
1 回答
460 浏览

python - 如何在图表中整齐地或以一定间隔的形式显示 X 轴日期刻度

我正在使用 plotly 制作 OHLC 图。我偶然发现了一个问题。x 轴上的标签看起来很乱。有没有办法让它更整洁。或者我们只能显示极端日期值。例如,仅显示第一个日期值和最后一个日期值。日期范围本质上是动态的。我正在使用下面的查询来制作图表。谢谢您的帮助。

这里 tickerDf 是包含股票相关数据的数据框。

在此处输入图像描述

0 投票
0 回答
111 浏览

javascript - Highcharts Highstock 如何使用嵌入式 CSV 数据绘制 OHLC 条形图?

不使用 CSV 数据的工作图

使用这个例子:

http://jsfiddle.net/grw3hamv/

我编写了以下代码来绘制一个简单的 ohlc 图:

对 open 和 close 字段中的“null”值进行试验表明,应用程序允许 open 为 null 值,但如果 close 字段为 null 值,则不会打印条形图。

在 PRE 块中使用 CSV 的示例

此示例代码使用嵌入的 csv 数据通过 highcharts 生成“areaspline”图表:

http://jsfiddle.net/gh/get/jquery/1.7.2/highcharts/highcharts/tree/master/samples/highcharts/data/csv/

无法在 PRE 块中从 CSV 绘制 OHLC 图表 - (已解决!)

我正在尝试将 csv 数据嵌入 html 并从 csv 数据生成“ohlc”样式图表。下面的 html/script 代码在 Firefox 中本地运行。结果显示图表布局,但图中未出现数据条。(编辑:由于评论部分提供了解决方案,下面的代码现在可以工作)。

接下来的工作是将 CSV 数据中的日期格式转换为示例命令输出的时间戳格式:new Date('2015-08-02').getTime()。

0 投票
0 回答
80 浏览

pine-script - How to get OHLC data of between the 2 specific time?

I want to get the OHLC values of multiple stocks between 2 specific times using pinescript running in TradingView. Date and Time can be any. Ex,

Stock Symbol: AAA Start Time: 07/15/2021 09:48AM End Time: 07/15/2021 12:31PM

Stock Symbol: BBB Start time: 07/14/2021 02:07PM End Time: 07/14/2021 04:00PM

Stock Symbol: CCC Start Time: 07/12/2021 10:05AM End Time: 07/15/2021 11:34AM

Thanks in Advance!

0 投票
2 回答
375 浏览

charts - 使用 mplfinance 绘图功能用 SMA 200 绘制 OHLC 蜡烛图

我正在使用 mplfinance 绘图函数来绘制符号的 OHLC 烛台图。OHLC 数据的时间范围为 2 分钟。另外,我在同一张图表上绘制了 sma 20 周期和 sma 200 周期。由于 sma200,图表上显示的蜡烛数量非常庞大(几乎两天的 2 分钟蜡烛)

由于移动平均线是由绘图函数在内部计算的,所以我必须将两天的 2 分钟蜡烛传递给绘图函数,以便我可以获得一些 sma200 的数据点。烛台图保存为 png 文件。现在由于图表上显示了大约 300 根蜡烛(sma20 和 sma200 线也显示),蜡烛显示得不是很清楚。

有没有办法限制图表上显示的蜡烛数量。如果我将数据框切成 30 根蜡烛,那么由于蜡烛数量不足,在这种情况下将不会计算 sma200。我需要的是具有完整数据集的 sma200,但仅显示固定数量的蜡烛或固定持续时间的图表,例如仅显示最后一小时的蜡烛数据。

0 投票
1 回答
46 浏览

r - 如何使用 R 中 tidyquant 包中的 tq_transmute 获取 OHLC 月度高低数据

我是分析时间序列数据的新手,正在寻找一些帮助,从一些 OHLC 数据中提取月度高价和低价。当我尝试汇总每月的开盘价、最高价、最低价和收盘价时,只有每个月最后一个日期的值才会被拉出,而不是每个月的最高价(最高价)和最低价(最低价)。任何帮助是极大的赞赏。

目前,它只是拉动每个月的最后一次观察。相反,我想要第一个开盘价、最高最高价、最低最低价、最后收盘价和总成交量。

0 投票
1 回答
76 浏览

python - 重采样 OHLC 数据

我想将 1h OHLC 数据转换为 xh OHLC 数据。我正在使用 resample 方法,就像它在类似线程中提出的那样,但它不会导致想要的结果。数据:

r 2h的重采样方法:

结果:

我想要的是一个从 22:00 开始的数据框,其中包含 21:00 和 22:00 的数据,第二行由 00:00 组成,它使用 23:00 和 00.00 的数据。

非常感谢你的帮助!

0 投票
0 回答
53 浏览

yfinance - 来自 yfinance 的每小时 OHLC 数据中报告了一天中第一个小时的 0 量

我正在使用 yfinance 获取印度市场 (.NS) 的股票数据。当我获取每小时数据时,我可以看到当天第一个小时的交易量是零。

例如:

运行上面的代码片段会给出卷数据:

有没有人知道这个问题,有没有办法解决这个问题?

编辑:BSE 交易所 (RELIANCE.BO) 能够报告所有时间的正确交易量。但是 NSE 交易所 (RELIANCE.NS) 有这个问题。

谢谢。