aw-highstock_rails 7.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (697) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.travis.yml +7 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +6 -0
  6. data/Gemfile.lock +22 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +53 -0
  9. data/Rakefile +10 -0
  10. data/aw-highstock_rails.gemspec +28 -0
  11. data/bin/console +14 -0
  12. data/bin/setup +8 -0
  13. data/lib/aw/highstock_rails.rb +9 -0
  14. data/lib/aw/highstock_rails/version.rb +5 -0
  15. data/vendor/assets/javascripts/highstock/css/annotations/popup.css +229 -0
  16. data/vendor/assets/javascripts/highstock/css/annotations/popup.scss +235 -0
  17. data/vendor/assets/javascripts/highstock/css/highcharts.css +890 -0
  18. data/vendor/assets/javascripts/highstock/css/highcharts.scss +788 -0
  19. data/vendor/assets/javascripts/highstock/css/stocktools/gui.css +268 -0
  20. data/vendor/assets/javascripts/highstock/css/stocktools/gui.scss +270 -0
  21. data/vendor/assets/javascripts/highstock/css/themes/dark-unica.css +951 -0
  22. data/vendor/assets/javascripts/highstock/css/themes/dark-unica.scss +122 -0
  23. data/vendor/assets/javascripts/highstock/css/themes/grid-light.css +904 -0
  24. data/vendor/assets/javascripts/highstock/css/themes/grid-light.scss +33 -0
  25. data/vendor/assets/javascripts/highstock/css/themes/sand-signika.css +920 -0
  26. data/vendor/assets/javascripts/highstock/css/themes/sand-signika.scss +74 -0
  27. data/vendor/assets/javascripts/highstock/es-modules/annotations/ControlPoint.js +130 -0
  28. data/vendor/assets/javascripts/highstock/es-modules/annotations/MockPoint.js +415 -0
  29. data/vendor/assets/javascripts/highstock/es-modules/annotations/annotations.src.js +1231 -0
  30. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllableCircle.js +92 -0
  31. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllableImage.js +101 -0
  32. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllableLabel.js +452 -0
  33. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllablePath.js +175 -0
  34. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllableRect.js +93 -0
  35. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/controllableMixin.js +411 -0
  36. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/markerMixin.js +214 -0
  37. data/vendor/assets/javascripts/highstock/es-modules/annotations/eventEmitterMixin.js +271 -0
  38. data/vendor/assets/javascripts/highstock/es-modules/annotations/navigationBindings.js +1283 -0
  39. data/vendor/assets/javascripts/highstock/es-modules/annotations/popup.js +1069 -0
  40. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/CrookedLine.js +191 -0
  41. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/ElliottWave.js +76 -0
  42. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/Fibonacci.js +247 -0
  43. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/InfinityLine.js +185 -0
  44. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/Measure.js +928 -0
  45. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/Pitchfork.js +203 -0
  46. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/Tunnel.js +242 -0
  47. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/VerticalLine.js +157 -0
  48. data/vendor/assets/javascripts/highstock/es-modules/error-messages.js +128 -0
  49. data/vendor/assets/javascripts/highstock/es-modules/error.js +1 -0
  50. data/vendor/assets/javascripts/highstock/es-modules/indicators/acceleration-bands.src.js +199 -0
  51. data/vendor/assets/javascripts/highstock/es-modules/indicators/accumulation-distribution.src.js +129 -0
  52. data/vendor/assets/javascripts/highstock/es-modules/indicators/ao.src.js +206 -0
  53. data/vendor/assets/javascripts/highstock/es-modules/indicators/apo.src.js +148 -0
  54. data/vendor/assets/javascripts/highstock/es-modules/indicators/aroon-oscillator.src.js +128 -0
  55. data/vendor/assets/javascripts/highstock/es-modules/indicators/aroon.src.js +173 -0
  56. data/vendor/assets/javascripts/highstock/es-modules/indicators/atr.src.js +151 -0
  57. data/vendor/assets/javascripts/highstock/es-modules/indicators/bollinger-bands.src.js +209 -0
  58. data/vendor/assets/javascripts/highstock/es-modules/indicators/cci.src.js +131 -0
  59. data/vendor/assets/javascripts/highstock/es-modules/indicators/chaikin.src.js +167 -0
  60. data/vendor/assets/javascripts/highstock/es-modules/indicators/cmf.src.js +246 -0
  61. data/vendor/assets/javascripts/highstock/es-modules/indicators/dema.src.js +191 -0
  62. data/vendor/assets/javascripts/highstock/es-modules/indicators/dpo.src.js +138 -0
  63. data/vendor/assets/javascripts/highstock/es-modules/indicators/ema.src.js +166 -0
  64. data/vendor/assets/javascripts/highstock/es-modules/indicators/ichimoku-kinko-hyo.src.js +850 -0
  65. data/vendor/assets/javascripts/highstock/es-modules/indicators/indicators.src.js +425 -0
  66. data/vendor/assets/javascripts/highstock/es-modules/indicators/keltner-channels.src.js +193 -0
  67. data/vendor/assets/javascripts/highstock/es-modules/indicators/macd.src.js +417 -0
  68. data/vendor/assets/javascripts/highstock/es-modules/indicators/mfi.src.js +198 -0
  69. data/vendor/assets/javascripts/highstock/es-modules/indicators/momentum.src.js +119 -0
  70. data/vendor/assets/javascripts/highstock/es-modules/indicators/natr.src.js +74 -0
  71. data/vendor/assets/javascripts/highstock/es-modules/indicators/pivot-points.src.js +360 -0
  72. data/vendor/assets/javascripts/highstock/es-modules/indicators/ppo.src.js +152 -0
  73. data/vendor/assets/javascripts/highstock/es-modules/indicators/price-channel.src.js +149 -0
  74. data/vendor/assets/javascripts/highstock/es-modules/indicators/price-envelopes.src.js +251 -0
  75. data/vendor/assets/javascripts/highstock/es-modules/indicators/psar.src.js +307 -0
  76. data/vendor/assets/javascripts/highstock/es-modules/indicators/regressions.src.js +427 -0
  77. data/vendor/assets/javascripts/highstock/es-modules/indicators/roc.src.js +149 -0
  78. data/vendor/assets/javascripts/highstock/es-modules/indicators/rsi.src.js +163 -0
  79. data/vendor/assets/javascripts/highstock/es-modules/indicators/stochastic.src.js +193 -0
  80. data/vendor/assets/javascripts/highstock/es-modules/indicators/supertrend.src.js +544 -0
  81. data/vendor/assets/javascripts/highstock/es-modules/indicators/tema.src.js +247 -0
  82. data/vendor/assets/javascripts/highstock/es-modules/indicators/trix.src.js +96 -0
  83. data/vendor/assets/javascripts/highstock/es-modules/indicators/volume-by-price.src.js +671 -0
  84. data/vendor/assets/javascripts/highstock/es-modules/indicators/vwap.src.js +189 -0
  85. data/vendor/assets/javascripts/highstock/es-modules/indicators/williams-r.src.js +128 -0
  86. data/vendor/assets/javascripts/highstock/es-modules/indicators/wma.src.js +146 -0
  87. data/vendor/assets/javascripts/highstock/es-modules/indicators/zigzag.src.js +221 -0
  88. data/vendor/assets/javascripts/highstock/es-modules/masters/highcharts-3d.src.js +17 -0
  89. data/vendor/assets/javascripts/highstock/es-modules/masters/highcharts-more.src.js +22 -0
  90. data/vendor/assets/javascripts/highstock/es-modules/masters/highstock.src.js +11 -0
  91. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/acceleration-bands.src.js +11 -0
  92. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/accumulation-distribution.src.js +11 -0
  93. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/ao.src.js +11 -0
  94. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/apo.src.js +11 -0
  95. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/aroon-oscillator.src.js +11 -0
  96. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/aroon.src.js +11 -0
  97. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/atr.src.js +11 -0
  98. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/bollinger-bands.src.js +11 -0
  99. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/cci.src.js +11 -0
  100. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/chaikin.src.js +11 -0
  101. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/cmf.src.js +10 -0
  102. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/dema.src.js +11 -0
  103. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/dpo.src.js +11 -0
  104. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/ema.src.js +11 -0
  105. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +11 -0
  106. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/indicators-all.src.js +49 -0
  107. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/indicators.src.js +11 -0
  108. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/keltner-channels.src.js +11 -0
  109. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/macd.src.js +11 -0
  110. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/mfi.src.js +11 -0
  111. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/momentum.src.js +11 -0
  112. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/natr.src.js +11 -0
  113. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/pivot-points.src.js +11 -0
  114. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/ppo.src.js +11 -0
  115. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/price-channel.src.js +11 -0
  116. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/price-envelopes.src.js +11 -0
  117. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/psar.src.js +11 -0
  118. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/regressions.src.js +11 -0
  119. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/roc.src.js +11 -0
  120. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/rsi.src.js +11 -0
  121. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/stochastic.src.js +11 -0
  122. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/supertrend.src.js +11 -0
  123. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/tema.src.js +11 -0
  124. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/trix.src.js +11 -0
  125. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/volume-by-price.src.js +11 -0
  126. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/vwap.src.js +11 -0
  127. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/williams-r.src.js +11 -0
  128. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/wma.src.js +11 -0
  129. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/zigzag.src.js +11 -0
  130. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/accessibility.src.js +13 -0
  131. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/annotations-advanced.src.js +20 -0
  132. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/annotations.src.js +12 -0
  133. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/arrow-symbols.src.js +10 -0
  134. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/boost-canvas.src.js +11 -0
  135. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/boost.src.js +11 -0
  136. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/bullet.src.js +11 -0
  137. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/current-date-indicator.src.js +10 -0
  138. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/cylinder.src.js +10 -0
  139. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/data.src.js +10 -0
  140. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/datagrouping.src.js +12 -0
  141. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/debugger.src.js +13 -0
  142. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/dependency-wheel.src.js +10 -0
  143. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/drag-panes.src.js +11 -0
  144. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/draggable-points.src.js +9 -0
  145. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/drilldown.src.js +10 -0
  146. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/export-data.src.js +10 -0
  147. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/exporting.src.js +10 -0
  148. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/full-screen.src.js +11 -0
  149. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/funnel.src.js +10 -0
  150. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/grid-axis.src.js +10 -0
  151. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/heatmap.src.js +11 -0
  152. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/histogram-bellcurve.src.js +11 -0
  153. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/item-series.src.js +11 -0
  154. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/networkgraph.src.js +10 -0
  155. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/no-data-to-display.src.js +11 -0
  156. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/offline-exporting.src.js +10 -0
  157. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/oldie-polyfills.src.js +11 -0
  158. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/oldie.src.js +11 -0
  159. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/overlapping-datalabels.src.js +9 -0
  160. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/parallel-coordinates.src.js +11 -0
  161. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/pareto.src.js +11 -0
  162. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/pathfinder.src.js +10 -0
  163. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/pattern-fill.src.js +11 -0
  164. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/price-indicator.src.js +11 -0
  165. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/sankey.src.js +10 -0
  166. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/series-label.src.js +9 -0
  167. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/solid-gauge.src.js +10 -0
  168. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/sonification.src.js +12 -0
  169. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/static-scale.src.js +10 -0
  170. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/stock-tools.src.js +12 -0
  171. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/stock.src.js +19 -0
  172. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/streamgraph.src.js +10 -0
  173. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/sunburst.src.js +10 -0
  174. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/tilemap.src.js +10 -0
  175. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/timeline.src.js +11 -0
  176. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/treegrid.src.js +10 -0
  177. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/treemap.src.js +10 -0
  178. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/variable-pie.src.js +11 -0
  179. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/variwide.src.js +10 -0
  180. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/vector.src.js +10 -0
  181. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/venn.src.js +10 -0
  182. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/windbarb.src.js +10 -0
  183. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/wordcloud.src.js +10 -0
  184. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/xrange.src.js +10 -0
  185. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/avocado.js +9 -0
  186. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/avocado.src.js +9 -0
  187. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/dark-blue.src.js +9 -0
  188. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/dark-green.src.js +9 -0
  189. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/dark-unica.src.js +9 -0
  190. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/gray.src.js +9 -0
  191. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/grid-light.src.js +9 -0
  192. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/grid.src.js +9 -0
  193. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/sand-signika.src.js +9 -0
  194. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/skies.src.js +9 -0
  195. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/sunset.js +9 -0
  196. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/sunset.src.js +9 -0
  197. data/vendor/assets/javascripts/highstock/es-modules/mixins/ajax.js +123 -0
  198. data/vendor/assets/javascripts/highstock/es-modules/mixins/centered-series.js +116 -0
  199. data/vendor/assets/javascripts/highstock/es-modules/mixins/derived-series.js +150 -0
  200. data/vendor/assets/javascripts/highstock/es-modules/mixins/download-url.js +103 -0
  201. data/vendor/assets/javascripts/highstock/es-modules/mixins/draw-point.js +51 -0
  202. data/vendor/assets/javascripts/highstock/es-modules/mixins/geometry-circles.js +300 -0
  203. data/vendor/assets/javascripts/highstock/es-modules/mixins/geometry.js +50 -0
  204. data/vendor/assets/javascripts/highstock/es-modules/mixins/indicator-required.js +49 -0
  205. data/vendor/assets/javascripts/highstock/es-modules/mixins/multipe-lines.js +223 -0
  206. data/vendor/assets/javascripts/highstock/es-modules/mixins/navigation.js +59 -0
  207. data/vendor/assets/javascripts/highstock/es-modules/mixins/nodes.js +76 -0
  208. data/vendor/assets/javascripts/highstock/es-modules/mixins/on-series.js +167 -0
  209. data/vendor/assets/javascripts/highstock/es-modules/mixins/polygon.js +293 -0
  210. data/vendor/assets/javascripts/highstock/es-modules/mixins/reduce-array.js +53 -0
  211. data/vendor/assets/javascripts/highstock/es-modules/mixins/tree-series.js +256 -0
  212. data/vendor/assets/javascripts/highstock/es-modules/modules/a11y-i18n.src.js +524 -0
  213. data/vendor/assets/javascripts/highstock/es-modules/modules/annotations-legacy.src.js +1951 -0
  214. data/vendor/assets/javascripts/highstock/es-modules/modules/bellcurve.src.js +173 -0
  215. data/vendor/assets/javascripts/highstock/es-modules/modules/boost-canvas.src.js +732 -0
  216. data/vendor/assets/javascripts/highstock/es-modules/modules/boost.src.js +3730 -0
  217. data/vendor/assets/javascripts/highstock/es-modules/modules/bullet.src.js +361 -0
  218. data/vendor/assets/javascripts/highstock/es-modules/modules/cylinder.src.js +389 -0
  219. data/vendor/assets/javascripts/highstock/es-modules/modules/data.src.js +2417 -0
  220. data/vendor/assets/javascripts/highstock/es-modules/modules/debugger.src.js +109 -0
  221. data/vendor/assets/javascripts/highstock/es-modules/modules/dependency-wheel.src.js +199 -0
  222. data/vendor/assets/javascripts/highstock/es-modules/modules/drag-panes.src.js +624 -0
  223. data/vendor/assets/javascripts/highstock/es-modules/modules/draggable-points.src.js +2625 -0
  224. data/vendor/assets/javascripts/highstock/es-modules/modules/drilldown.src.js +1300 -0
  225. data/vendor/assets/javascripts/highstock/es-modules/modules/export-data.src.js +983 -0
  226. data/vendor/assets/javascripts/highstock/es-modules/modules/exporting.src.js +2149 -0
  227. data/vendor/assets/javascripts/highstock/es-modules/modules/full-screen.src.js +40 -0
  228. data/vendor/assets/javascripts/highstock/es-modules/modules/funnel.src.js +552 -0
  229. data/vendor/assets/javascripts/highstock/es-modules/modules/histogram.src.js +229 -0
  230. data/vendor/assets/javascripts/highstock/es-modules/modules/item-series.src.js +150 -0
  231. data/vendor/assets/javascripts/highstock/es-modules/modules/keyboard-navigation.src.js +1606 -0
  232. data/vendor/assets/javascripts/highstock/es-modules/modules/networkgraph/QuadTree.js +175 -0
  233. data/vendor/assets/javascripts/highstock/es-modules/modules/networkgraph/layouts.js +506 -0
  234. data/vendor/assets/javascripts/highstock/es-modules/modules/networkgraph/networkgraph.src.js +740 -0
  235. data/vendor/assets/javascripts/highstock/es-modules/modules/no-data-to-display.src.js +260 -0
  236. data/vendor/assets/javascripts/highstock/es-modules/modules/offline-exporting.src.js +710 -0
  237. data/vendor/assets/javascripts/highstock/es-modules/modules/oldie-polyfills.src.js +121 -0
  238. data/vendor/assets/javascripts/highstock/es-modules/modules/oldie.src.js +1556 -0
  239. data/vendor/assets/javascripts/highstock/es-modules/modules/overlapping-datalabels.src.js +250 -0
  240. data/vendor/assets/javascripts/highstock/es-modules/modules/parallel-coordinates.src.js +492 -0
  241. data/vendor/assets/javascripts/highstock/es-modules/modules/pareto.src.js +152 -0
  242. data/vendor/assets/javascripts/highstock/es-modules/modules/pattern-fill.src.js +607 -0
  243. data/vendor/assets/javascripts/highstock/es-modules/modules/price-indicator.src.js +149 -0
  244. data/vendor/assets/javascripts/highstock/es-modules/modules/sankey.src.js +809 -0
  245. data/vendor/assets/javascripts/highstock/es-modules/modules/screen-reader.src.js +954 -0
  246. data/vendor/assets/javascripts/highstock/es-modules/modules/series-label.src.js +1042 -0
  247. data/vendor/assets/javascripts/highstock/es-modules/modules/solid-gauge.src.js +486 -0
  248. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/Earcon.js +184 -0
  249. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/Instrument.js +582 -0
  250. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/Timeline.js +702 -0
  251. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/chartSonify.js +1026 -0
  252. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/instrumentDefinitions.js +37 -0
  253. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/musicalFrequencies.js +113 -0
  254. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/pointSonify.js +385 -0
  255. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/sonification.js +107 -0
  256. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/utilities.js +178 -0
  257. data/vendor/assets/javascripts/highstock/es-modules/modules/static-scale.src.js +88 -0
  258. data/vendor/assets/javascripts/highstock/es-modules/modules/stock-tools-bindings.js +1950 -0
  259. data/vendor/assets/javascripts/highstock/es-modules/modules/stock-tools-gui.js +1458 -0
  260. data/vendor/assets/javascripts/highstock/es-modules/modules/streamgraph.src.js +132 -0
  261. data/vendor/assets/javascripts/highstock/es-modules/modules/sunburst.src.js +1041 -0
  262. data/vendor/assets/javascripts/highstock/es-modules/modules/tilemap.src.js +769 -0
  263. data/vendor/assets/javascripts/highstock/es-modules/modules/timeline.src.js +750 -0
  264. data/vendor/assets/javascripts/highstock/es-modules/modules/treemap.src.js +1803 -0
  265. data/vendor/assets/javascripts/highstock/es-modules/modules/variable-pie.src.js +459 -0
  266. data/vendor/assets/javascripts/highstock/es-modules/modules/variwide.src.js +350 -0
  267. data/vendor/assets/javascripts/highstock/es-modules/modules/vector.src.js +354 -0
  268. data/vendor/assets/javascripts/highstock/es-modules/modules/venn.src.js +1192 -0
  269. data/vendor/assets/javascripts/highstock/es-modules/modules/windbarb.src.js +380 -0
  270. data/vendor/assets/javascripts/highstock/es-modules/modules/wordcloud.src.js +1103 -0
  271. data/vendor/assets/javascripts/highstock/es-modules/modules/xrange.src.js +761 -0
  272. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Axis.js +669 -0
  273. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Chart.js +1753 -0
  274. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Column.js +437 -0
  275. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Math.js +206 -0
  276. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Pie.js +207 -0
  277. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/SVGRenderer.js +1002 -0
  278. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Scatter.js +154 -0
  279. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Series.js +73 -0
  280. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/VMLRenderer.js +62 -0
  281. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/ArrowSymbols.js +198 -0
  282. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/CurrentDateIndicator.js +100 -0
  283. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/GanttChart.js +140 -0
  284. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/GanttSeries.js +415 -0
  285. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/GridAxis.js +961 -0
  286. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/Pathfinder.js +1298 -0
  287. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/PathfinderAlgorithms.js +816 -0
  288. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/Tree.js +158 -0
  289. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/TreeGrid.js +1003 -0
  290. data/vendor/assets/javascripts/highstock/es-modules/parts-map/ColorAxis.js +1103 -0
  291. data/vendor/assets/javascripts/highstock/es-modules/parts-map/ColorSeriesMixin.js +138 -0
  292. data/vendor/assets/javascripts/highstock/es-modules/parts-map/GeoJSON.js +435 -0
  293. data/vendor/assets/javascripts/highstock/es-modules/parts-map/HeatmapSeries.js +474 -0
  294. data/vendor/assets/javascripts/highstock/es-modules/parts-map/Map.js +477 -0
  295. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapAxis.js +124 -0
  296. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapBubbleSeries.js +274 -0
  297. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapLineSeries.js +143 -0
  298. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapNavigation.js +357 -0
  299. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapPointSeries.js +187 -0
  300. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapPointer.js +132 -0
  301. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapSeries.js +1294 -0
  302. data/vendor/assets/javascripts/highstock/es-modules/parts-more/AreaRangeSeries.js +725 -0
  303. data/vendor/assets/javascripts/highstock/es-modules/parts-more/AreaSplineRangeSeries.js +98 -0
  304. data/vendor/assets/javascripts/highstock/es-modules/parts-more/BoxPlotSeries.js +617 -0
  305. data/vendor/assets/javascripts/highstock/es-modules/parts-more/BubbleLegend.js +1167 -0
  306. data/vendor/assets/javascripts/highstock/es-modules/parts-more/BubbleSeries.js +661 -0
  307. data/vendor/assets/javascripts/highstock/es-modules/parts-more/ColumnPyramidSeries.js +288 -0
  308. data/vendor/assets/javascripts/highstock/es-modules/parts-more/ColumnRangeSeries.js +278 -0
  309. data/vendor/assets/javascripts/highstock/es-modules/parts-more/ErrorBarSeries.js +172 -0
  310. data/vendor/assets/javascripts/highstock/es-modules/parts-more/GaugeSeries.js +618 -0
  311. data/vendor/assets/javascripts/highstock/es-modules/parts-more/PackedBubbleSeries.js +567 -0
  312. data/vendor/assets/javascripts/highstock/es-modules/parts-more/Pane.js +399 -0
  313. data/vendor/assets/javascripts/highstock/es-modules/parts-more/Polar.js +634 -0
  314. data/vendor/assets/javascripts/highstock/es-modules/parts-more/PolygonSeries.js +151 -0
  315. data/vendor/assets/javascripts/highstock/es-modules/parts-more/RadialAxis.js +685 -0
  316. data/vendor/assets/javascripts/highstock/es-modules/parts-more/WaterfallSeries.js +765 -0
  317. data/vendor/assets/javascripts/highstock/es-modules/parts.js +684 -0
  318. data/vendor/assets/javascripts/highstock/es-modules/parts/AreaSeries.js +578 -0
  319. data/vendor/assets/javascripts/highstock/es-modules/parts/AreaSplineSeries.js +122 -0
  320. data/vendor/assets/javascripts/highstock/es-modules/parts/Axis.js +6453 -0
  321. data/vendor/assets/javascripts/highstock/es-modules/parts/BarSeries.js +153 -0
  322. data/vendor/assets/javascripts/highstock/es-modules/parts/CandlestickSeries.js +358 -0
  323. data/vendor/assets/javascripts/highstock/es-modules/parts/Chart.js +2307 -0
  324. data/vendor/assets/javascripts/highstock/es-modules/parts/Color.js +301 -0
  325. data/vendor/assets/javascripts/highstock/es-modules/parts/ColumnSeries.js +1125 -0
  326. data/vendor/assets/javascripts/highstock/es-modules/parts/DataGrouping.js +1115 -0
  327. data/vendor/assets/javascripts/highstock/es-modules/parts/DataLabels.js +1431 -0
  328. data/vendor/assets/javascripts/highstock/es-modules/parts/DateTimeAxis.js +134 -0
  329. data/vendor/assets/javascripts/highstock/es-modules/parts/Dynamics.js +1301 -0
  330. data/vendor/assets/javascripts/highstock/es-modules/parts/FlagsSeries.js +739 -0
  331. data/vendor/assets/javascripts/highstock/es-modules/parts/Globals.js +75 -0
  332. data/vendor/assets/javascripts/highstock/es-modules/parts/Html.js +539 -0
  333. data/vendor/assets/javascripts/highstock/es-modules/parts/Interaction.js +1299 -0
  334. data/vendor/assets/javascripts/highstock/es-modules/parts/Legend.js +1411 -0
  335. data/vendor/assets/javascripts/highstock/es-modules/parts/LogarithmicAxis.js +168 -0
  336. data/vendor/assets/javascripts/highstock/es-modules/parts/MSPointer.js +176 -0
  337. data/vendor/assets/javascripts/highstock/es-modules/parts/Navigator.js +2486 -0
  338. data/vendor/assets/javascripts/highstock/es-modules/parts/OHLCSeries.js +412 -0
  339. data/vendor/assets/javascripts/highstock/es-modules/parts/Options.js +3732 -0
  340. data/vendor/assets/javascripts/highstock/es-modules/parts/OrdinalAxis.js +962 -0
  341. data/vendor/assets/javascripts/highstock/es-modules/parts/PieSeries.js +1328 -0
  342. data/vendor/assets/javascripts/highstock/es-modules/parts/PlotBandSeries.experimental.js +74 -0
  343. data/vendor/assets/javascripts/highstock/es-modules/parts/PlotLineOrBand.js +1061 -0
  344. data/vendor/assets/javascripts/highstock/es-modules/parts/Point.js +681 -0
  345. data/vendor/assets/javascripts/highstock/es-modules/parts/Pointer.js +1332 -0
  346. data/vendor/assets/javascripts/highstock/es-modules/parts/RangeSelector.js +2063 -0
  347. data/vendor/assets/javascripts/highstock/es-modules/parts/Responsive.js +295 -0
  348. data/vendor/assets/javascripts/highstock/es-modules/parts/ScatterSeries.js +278 -0
  349. data/vendor/assets/javascripts/highstock/es-modules/parts/ScrollablePlotArea.js +266 -0
  350. data/vendor/assets/javascripts/highstock/es-modules/parts/Scrollbar.js +1134 -0
  351. data/vendor/assets/javascripts/highstock/es-modules/parts/Series.js +5864 -0
  352. data/vendor/assets/javascripts/highstock/es-modules/parts/SplineSeries.js +267 -0
  353. data/vendor/assets/javascripts/highstock/es-modules/parts/Stacking.js +604 -0
  354. data/vendor/assets/javascripts/highstock/es-modules/parts/StockChart.js +951 -0
  355. data/vendor/assets/javascripts/highstock/es-modules/parts/SvgRenderer.js +5109 -0
  356. data/vendor/assets/javascripts/highstock/es-modules/parts/Tick.js +746 -0
  357. data/vendor/assets/javascripts/highstock/es-modules/parts/Time.js +881 -0
  358. data/vendor/assets/javascripts/highstock/es-modules/parts/Tooltip.js +1318 -0
  359. data/vendor/assets/javascripts/highstock/es-modules/parts/TouchPointer.js +404 -0
  360. data/vendor/assets/javascripts/highstock/es-modules/parts/Utilities.js +2751 -0
  361. data/vendor/assets/javascripts/highstock/es-modules/themes/avocado.js +37 -0
  362. data/vendor/assets/javascripts/highstock/es-modules/themes/dark-blue.js +259 -0
  363. data/vendor/assets/javascripts/highstock/es-modules/themes/dark-green.js +261 -0
  364. data/vendor/assets/javascripts/highstock/es-modules/themes/dark-unica.js +220 -0
  365. data/vendor/assets/javascripts/highstock/es-modules/themes/gray.js +267 -0
  366. data/vendor/assets/javascripts/highstock/es-modules/themes/grid-light.js +81 -0
  367. data/vendor/assets/javascripts/highstock/es-modules/themes/grid.js +110 -0
  368. data/vendor/assets/javascripts/highstock/es-modules/themes/sand-signika.js +111 -0
  369. data/vendor/assets/javascripts/highstock/es-modules/themes/skies.js +100 -0
  370. data/vendor/assets/javascripts/highstock/es-modules/themes/sunset.js +36 -0
  371. data/vendor/assets/javascripts/highstock/highcharts-3d.js +85 -0
  372. data/vendor/assets/javascripts/highstock/highcharts-3d.js.map +1 -0
  373. data/vendor/assets/javascripts/highstock/highcharts-more.js +101 -0
  374. data/vendor/assets/javascripts/highstock/highcharts-more.js.map +1 -0
  375. data/vendor/assets/javascripts/highstock/highstock.js +583 -0
  376. data/vendor/assets/javascripts/highstock/highstock.js.map +1 -0
  377. data/vendor/assets/javascripts/highstock/indicators/acceleration-bands.js +16 -0
  378. data/vendor/assets/javascripts/highstock/indicators/acceleration-bands.js.map +1 -0
  379. data/vendor/assets/javascripts/highstock/indicators/acceleration-bands.src.js +448 -0
  380. data/vendor/assets/javascripts/highstock/indicators/accumulation-distribution.js +12 -0
  381. data/vendor/assets/javascripts/highstock/indicators/accumulation-distribution.js.map +1 -0
  382. data/vendor/assets/javascripts/highstock/indicators/accumulation-distribution.src.js +156 -0
  383. data/vendor/assets/javascripts/highstock/indicators/ao.js +13 -0
  384. data/vendor/assets/javascripts/highstock/indicators/ao.js.map +1 -0
  385. data/vendor/assets/javascripts/highstock/indicators/ao.src.js +233 -0
  386. data/vendor/assets/javascripts/highstock/indicators/apo.js +13 -0
  387. data/vendor/assets/javascripts/highstock/indicators/apo.js.map +1 -0
  388. data/vendor/assets/javascripts/highstock/indicators/apo.src.js +223 -0
  389. data/vendor/assets/javascripts/highstock/indicators/aroon-oscillator.js +15 -0
  390. data/vendor/assets/javascripts/highstock/indicators/aroon-oscillator.js.map +1 -0
  391. data/vendor/assets/javascripts/highstock/indicators/aroon-oscillator.src.js +426 -0
  392. data/vendor/assets/javascripts/highstock/indicators/aroon.js +16 -0
  393. data/vendor/assets/javascripts/highstock/indicators/aroon.js.map +1 -0
  394. data/vendor/assets/javascripts/highstock/indicators/aroon.src.js +423 -0
  395. data/vendor/assets/javascripts/highstock/indicators/atr.js +12 -0
  396. data/vendor/assets/javascripts/highstock/indicators/atr.js.map +1 -0
  397. data/vendor/assets/javascripts/highstock/indicators/atr.src.js +178 -0
  398. data/vendor/assets/javascripts/highstock/indicators/bollinger-bands.js +16 -0
  399. data/vendor/assets/javascripts/highstock/indicators/bollinger-bands.js.map +1 -0
  400. data/vendor/assets/javascripts/highstock/indicators/bollinger-bands.src.js +458 -0
  401. data/vendor/assets/javascripts/highstock/indicators/cci.js +12 -0
  402. data/vendor/assets/javascripts/highstock/indicators/cci.js.map +1 -0
  403. data/vendor/assets/javascripts/highstock/indicators/cci.src.js +158 -0
  404. data/vendor/assets/javascripts/highstock/indicators/chaikin.js +15 -0
  405. data/vendor/assets/javascripts/highstock/indicators/chaikin.js.map +1 -0
  406. data/vendor/assets/javascripts/highstock/indicators/chaikin.src.js +370 -0
  407. data/vendor/assets/javascripts/highstock/indicators/cmf.js +12 -0
  408. data/vendor/assets/javascripts/highstock/indicators/cmf.js.map +1 -0
  409. data/vendor/assets/javascripts/highstock/indicators/cmf.src.js +273 -0
  410. data/vendor/assets/javascripts/highstock/indicators/dema.js +13 -0
  411. data/vendor/assets/javascripts/highstock/indicators/dema.js.map +1 -0
  412. data/vendor/assets/javascripts/highstock/indicators/dema.src.js +266 -0
  413. data/vendor/assets/javascripts/highstock/indicators/dpo.js +12 -0
  414. data/vendor/assets/javascripts/highstock/indicators/dpo.js.map +1 -0
  415. data/vendor/assets/javascripts/highstock/indicators/dpo.src.js +166 -0
  416. data/vendor/assets/javascripts/highstock/indicators/ema.js +12 -0
  417. data/vendor/assets/javascripts/highstock/indicators/ema.js.map +1 -0
  418. data/vendor/assets/javascripts/highstock/indicators/ema.src.js +193 -0
  419. data/vendor/assets/javascripts/highstock/indicators/ichimoku-kinko-hyo.js +22 -0
  420. data/vendor/assets/javascripts/highstock/indicators/ichimoku-kinko-hyo.js.map +1 -0
  421. data/vendor/assets/javascripts/highstock/indicators/ichimoku-kinko-hyo.src.js +877 -0
  422. data/vendor/assets/javascripts/highstock/indicators/indicators-all.js +117 -0
  423. data/vendor/assets/javascripts/highstock/indicators/indicators-all.js.map +1 -0
  424. data/vendor/assets/javascripts/highstock/indicators/indicators-all.src.js +9389 -0
  425. data/vendor/assets/javascripts/highstock/indicators/indicators.js +17 -0
  426. data/vendor/assets/javascripts/highstock/indicators/indicators.js.map +1 -0
  427. data/vendor/assets/javascripts/highstock/indicators/indicators.src.js +500 -0
  428. data/vendor/assets/javascripts/highstock/indicators/keltner-channels.js +16 -0
  429. data/vendor/assets/javascripts/highstock/indicators/keltner-channels.js.map +1 -0
  430. data/vendor/assets/javascripts/highstock/indicators/keltner-channels.src.js +442 -0
  431. data/vendor/assets/javascripts/highstock/indicators/macd.js +18 -0
  432. data/vendor/assets/javascripts/highstock/indicators/macd.js.map +1 -0
  433. data/vendor/assets/javascripts/highstock/indicators/macd.src.js +444 -0
  434. data/vendor/assets/javascripts/highstock/indicators/mfi.js +13 -0
  435. data/vendor/assets/javascripts/highstock/indicators/mfi.js.map +1 -0
  436. data/vendor/assets/javascripts/highstock/indicators/mfi.src.js +225 -0
  437. data/vendor/assets/javascripts/highstock/indicators/momentum.js +12 -0
  438. data/vendor/assets/javascripts/highstock/indicators/momentum.js.map +1 -0
  439. data/vendor/assets/javascripts/highstock/indicators/momentum.src.js +146 -0
  440. data/vendor/assets/javascripts/highstock/indicators/natr.js +12 -0
  441. data/vendor/assets/javascripts/highstock/indicators/natr.js.map +1 -0
  442. data/vendor/assets/javascripts/highstock/indicators/natr.src.js +101 -0
  443. data/vendor/assets/javascripts/highstock/indicators/pivot-points.js +16 -0
  444. data/vendor/assets/javascripts/highstock/indicators/pivot-points.js.map +1 -0
  445. data/vendor/assets/javascripts/highstock/indicators/pivot-points.src.js +387 -0
  446. data/vendor/assets/javascripts/highstock/indicators/ppo.js +13 -0
  447. data/vendor/assets/javascripts/highstock/indicators/ppo.js.map +1 -0
  448. data/vendor/assets/javascripts/highstock/indicators/ppo.src.js +227 -0
  449. data/vendor/assets/javascripts/highstock/indicators/price-channel.js +16 -0
  450. data/vendor/assets/javascripts/highstock/indicators/price-channel.js.map +1 -0
  451. data/vendor/assets/javascripts/highstock/indicators/price-channel.src.js +450 -0
  452. data/vendor/assets/javascripts/highstock/indicators/price-envelopes.js +15 -0
  453. data/vendor/assets/javascripts/highstock/indicators/price-envelopes.js.map +1 -0
  454. data/vendor/assets/javascripts/highstock/indicators/price-envelopes.src.js +278 -0
  455. data/vendor/assets/javascripts/highstock/indicators/psar.js +13 -0
  456. data/vendor/assets/javascripts/highstock/indicators/psar.js.map +1 -0
  457. data/vendor/assets/javascripts/highstock/indicators/psar.src.js +334 -0
  458. data/vendor/assets/javascripts/highstock/indicators/regressions.js +14 -0
  459. data/vendor/assets/javascripts/highstock/indicators/regressions.js.map +1 -0
  460. data/vendor/assets/javascripts/highstock/indicators/regressions.src.js +454 -0
  461. data/vendor/assets/javascripts/highstock/indicators/roc.js +12 -0
  462. data/vendor/assets/javascripts/highstock/indicators/roc.js.map +1 -0
  463. data/vendor/assets/javascripts/highstock/indicators/roc.src.js +176 -0
  464. data/vendor/assets/javascripts/highstock/indicators/rsi.js +12 -0
  465. data/vendor/assets/javascripts/highstock/indicators/rsi.js.map +1 -0
  466. data/vendor/assets/javascripts/highstock/indicators/rsi.src.js +190 -0
  467. data/vendor/assets/javascripts/highstock/indicators/stochastic.js +17 -0
  468. data/vendor/assets/javascripts/highstock/indicators/stochastic.js.map +1 -0
  469. data/vendor/assets/javascripts/highstock/indicators/stochastic.src.js +494 -0
  470. data/vendor/assets/javascripts/highstock/indicators/supertrend.js +17 -0
  471. data/vendor/assets/javascripts/highstock/indicators/supertrend.js.map +1 -0
  472. data/vendor/assets/javascripts/highstock/indicators/supertrend.src.js +571 -0
  473. data/vendor/assets/javascripts/highstock/indicators/tema.js +14 -0
  474. data/vendor/assets/javascripts/highstock/indicators/tema.js.map +1 -0
  475. data/vendor/assets/javascripts/highstock/indicators/tema.src.js +322 -0
  476. data/vendor/assets/javascripts/highstock/indicators/trix.js +12 -0
  477. data/vendor/assets/javascripts/highstock/indicators/trix.js.map +1 -0
  478. data/vendor/assets/javascripts/highstock/indicators/trix.src.js +171 -0
  479. data/vendor/assets/javascripts/highstock/indicators/volume-by-price.js +21 -0
  480. data/vendor/assets/javascripts/highstock/indicators/volume-by-price.js.map +1 -0
  481. data/vendor/assets/javascripts/highstock/indicators/volume-by-price.src.js +698 -0
  482. data/vendor/assets/javascripts/highstock/indicators/vwap.js +12 -0
  483. data/vendor/assets/javascripts/highstock/indicators/vwap.js.map +1 -0
  484. data/vendor/assets/javascripts/highstock/indicators/vwap.src.js +216 -0
  485. data/vendor/assets/javascripts/highstock/indicators/williams-r.js +13 -0
  486. data/vendor/assets/javascripts/highstock/indicators/williams-r.js.map +1 -0
  487. data/vendor/assets/javascripts/highstock/indicators/williams-r.src.js +207 -0
  488. data/vendor/assets/javascripts/highstock/indicators/wma.js +12 -0
  489. data/vendor/assets/javascripts/highstock/indicators/wma.js.map +1 -0
  490. data/vendor/assets/javascripts/highstock/indicators/wma.src.js +173 -0
  491. data/vendor/assets/javascripts/highstock/indicators/zigzag.js +13 -0
  492. data/vendor/assets/javascripts/highstock/indicators/zigzag.js.map +1 -0
  493. data/vendor/assets/javascripts/highstock/indicators/zigzag.src.js +248 -0
  494. data/vendor/assets/javascripts/highstock/lib/canvg.js +130 -0
  495. data/vendor/assets/javascripts/highstock/lib/canvg.src.js +3073 -0
  496. data/vendor/assets/javascripts/highstock/lib/jspdf.js +283 -0
  497. data/vendor/assets/javascripts/highstock/lib/jspdf.src.js +21627 -0
  498. data/vendor/assets/javascripts/highstock/lib/rgbcolor.js +17 -0
  499. data/vendor/assets/javascripts/highstock/lib/rgbcolor.src.js +299 -0
  500. data/vendor/assets/javascripts/highstock/lib/svg2pdf.js +38 -0
  501. data/vendor/assets/javascripts/highstock/lib/svg2pdf.src.js +4390 -0
  502. data/vendor/assets/javascripts/highstock/modules/accessibility.js +73 -0
  503. data/vendor/assets/javascripts/highstock/modules/accessibility.js.map +1 -0
  504. data/vendor/assets/javascripts/highstock/modules/accessibility.src.js +3103 -0
  505. data/vendor/assets/javascripts/highstock/modules/annotations-advanced.js +132 -0
  506. data/vendor/assets/javascripts/highstock/modules/annotations-advanced.js.map +1 -0
  507. data/vendor/assets/javascripts/highstock/modules/annotations-advanced.src.js +8230 -0
  508. data/vendor/assets/javascripts/highstock/modules/annotations.js +94 -0
  509. data/vendor/assets/javascripts/highstock/modules/annotations.js.map +1 -0
  510. data/vendor/assets/javascripts/highstock/modules/annotations.src.js +6001 -0
  511. data/vendor/assets/javascripts/highstock/modules/arrow-symbols.js +11 -0
  512. data/vendor/assets/javascripts/highstock/modules/arrow-symbols.js.map +1 -0
  513. data/vendor/assets/javascripts/highstock/modules/arrow-symbols.src.js +225 -0
  514. data/vendor/assets/javascripts/highstock/modules/boost-canvas.js +23 -0
  515. data/vendor/assets/javascripts/highstock/modules/boost-canvas.js.map +1 -0
  516. data/vendor/assets/javascripts/highstock/modules/boost-canvas.src.js +756 -0
  517. data/vendor/assets/javascripts/highstock/modules/boost.js +65 -0
  518. data/vendor/assets/javascripts/highstock/modules/boost.js.map +1 -0
  519. data/vendor/assets/javascripts/highstock/modules/boost.src.js +3752 -0
  520. data/vendor/assets/javascripts/highstock/modules/bullet.js +14 -0
  521. data/vendor/assets/javascripts/highstock/modules/bullet.js.map +1 -0
  522. data/vendor/assets/javascripts/highstock/modules/bullet.src.js +388 -0
  523. data/vendor/assets/javascripts/highstock/modules/current-date-indicator.js +11 -0
  524. data/vendor/assets/javascripts/highstock/modules/current-date-indicator.js.map +1 -0
  525. data/vendor/assets/javascripts/highstock/modules/current-date-indicator.src.js +127 -0
  526. data/vendor/assets/javascripts/highstock/modules/cylinder.js +14 -0
  527. data/vendor/assets/javascripts/highstock/modules/cylinder.js.map +1 -0
  528. data/vendor/assets/javascripts/highstock/modules/cylinder.src.js +413 -0
  529. data/vendor/assets/javascripts/highstock/modules/data.js +37 -0
  530. data/vendor/assets/javascripts/highstock/modules/data.js.map +1 -0
  531. data/vendor/assets/javascripts/highstock/modules/data.src.js +2565 -0
  532. data/vendor/assets/javascripts/highstock/modules/datagrouping.js +25 -0
  533. data/vendor/assets/javascripts/highstock/modules/datagrouping.js.map +1 -0
  534. data/vendor/assets/javascripts/highstock/modules/datagrouping.src.js +1140 -0
  535. data/vendor/assets/javascripts/highstock/modules/debugger.js +28 -0
  536. data/vendor/assets/javascripts/highstock/modules/debugger.js.map +1 -0
  537. data/vendor/assets/javascripts/highstock/modules/debugger.src.js +267 -0
  538. data/vendor/assets/javascripts/highstock/modules/dependency-wheel.js +15 -0
  539. data/vendor/assets/javascripts/highstock/modules/dependency-wheel.js.map +1 -0
  540. data/vendor/assets/javascripts/highstock/modules/dependency-wheel.src.js +301 -0
  541. data/vendor/assets/javascripts/highstock/modules/drag-panes.js +18 -0
  542. data/vendor/assets/javascripts/highstock/modules/drag-panes.js.map +1 -0
  543. data/vendor/assets/javascripts/highstock/modules/drag-panes.src.js +649 -0
  544. data/vendor/assets/javascripts/highstock/modules/draggable-points.js +40 -0
  545. data/vendor/assets/javascripts/highstock/modules/draggable-points.js.map +1 -0
  546. data/vendor/assets/javascripts/highstock/modules/draggable-points.src.js +2650 -0
  547. data/vendor/assets/javascripts/highstock/modules/drilldown.js +29 -0
  548. data/vendor/assets/javascripts/highstock/modules/drilldown.js.map +1 -0
  549. data/vendor/assets/javascripts/highstock/modules/drilldown.src.js +1321 -0
  550. data/vendor/assets/javascripts/highstock/modules/export-data.js +27 -0
  551. data/vendor/assets/javascripts/highstock/modules/export-data.js.map +1 -0
  552. data/vendor/assets/javascripts/highstock/modules/export-data.src.js +1234 -0
  553. data/vendor/assets/javascripts/highstock/modules/exporting.js +35 -0
  554. data/vendor/assets/javascripts/highstock/modules/exporting.js.map +1 -0
  555. data/vendor/assets/javascripts/highstock/modules/exporting.src.js +2233 -0
  556. data/vendor/assets/javascripts/highstock/modules/full-screen.js +11 -0
  557. data/vendor/assets/javascripts/highstock/modules/full-screen.js.map +1 -0
  558. data/vendor/assets/javascripts/highstock/modules/full-screen.src.js +68 -0
  559. data/vendor/assets/javascripts/highstock/modules/funnel.js +14 -0
  560. data/vendor/assets/javascripts/highstock/modules/funnel.js.map +1 -0
  561. data/vendor/assets/javascripts/highstock/modules/funnel.src.js +576 -0
  562. data/vendor/assets/javascripts/highstock/modules/grid-axis.js +23 -0
  563. data/vendor/assets/javascripts/highstock/modules/grid-axis.js.map +1 -0
  564. data/vendor/assets/javascripts/highstock/modules/grid-axis.src.js +988 -0
  565. data/vendor/assets/javascripts/highstock/modules/heatmap.js +28 -0
  566. data/vendor/assets/javascripts/highstock/modules/heatmap.js.map +1 -0
  567. data/vendor/assets/javascripts/highstock/modules/heatmap.src.js +1731 -0
  568. data/vendor/assets/javascripts/highstock/modules/histogram-bellcurve.js +16 -0
  569. data/vendor/assets/javascripts/highstock/modules/histogram-bellcurve.js.map +1 -0
  570. data/vendor/assets/javascripts/highstock/modules/histogram-bellcurve.src.js +570 -0
  571. data/vendor/assets/javascripts/highstock/modules/item-series.js +13 -0
  572. data/vendor/assets/javascripts/highstock/modules/item-series.js.map +1 -0
  573. data/vendor/assets/javascripts/highstock/modules/item-series.src.js +176 -0
  574. data/vendor/assets/javascripts/highstock/modules/networkgraph.js +31 -0
  575. data/vendor/assets/javascripts/highstock/modules/networkgraph.js.map +1 -0
  576. data/vendor/assets/javascripts/highstock/modules/networkgraph.src.js +1348 -0
  577. data/vendor/assets/javascripts/highstock/modules/no-data-to-display.js +13 -0
  578. data/vendor/assets/javascripts/highstock/modules/no-data-to-display.js.map +1 -0
  579. data/vendor/assets/javascripts/highstock/modules/no-data-to-display.src.js +285 -0
  580. data/vendor/assets/javascripts/highstock/modules/offline-exporting.js +22 -0
  581. data/vendor/assets/javascripts/highstock/modules/offline-exporting.js.map +1 -0
  582. data/vendor/assets/javascripts/highstock/modules/offline-exporting.src.js +838 -0
  583. data/vendor/assets/javascripts/highstock/modules/oldie-polyfills.js +13 -0
  584. data/vendor/assets/javascripts/highstock/modules/oldie-polyfills.js.map +1 -0
  585. data/vendor/assets/javascripts/highstock/modules/oldie-polyfills.src.js +150 -0
  586. data/vendor/assets/javascripts/highstock/modules/oldie.js +35 -0
  587. data/vendor/assets/javascripts/highstock/modules/oldie.js.map +1 -0
  588. data/vendor/assets/javascripts/highstock/modules/oldie.src.js +1582 -0
  589. data/vendor/assets/javascripts/highstock/modules/overlapping-datalabels.js +9 -0
  590. data/vendor/assets/javascripts/highstock/modules/overlapping-datalabels.js.map +1 -0
  591. data/vendor/assets/javascripts/highstock/modules/overlapping-datalabels.src.js +22 -0
  592. data/vendor/assets/javascripts/highstock/modules/parallel-coordinates.js +18 -0
  593. data/vendor/assets/javascripts/highstock/modules/parallel-coordinates.js.map +1 -0
  594. data/vendor/assets/javascripts/highstock/modules/parallel-coordinates.src.js +517 -0
  595. data/vendor/assets/javascripts/highstock/modules/pareto.js +14 -0
  596. data/vendor/assets/javascripts/highstock/modules/pareto.js.map +1 -0
  597. data/vendor/assets/javascripts/highstock/modules/pareto.src.js +327 -0
  598. data/vendor/assets/javascripts/highstock/modules/pathfinder.js +34 -0
  599. data/vendor/assets/javascripts/highstock/modules/pathfinder.js.map +1 -0
  600. data/vendor/assets/javascripts/highstock/modules/pathfinder.src.js +2336 -0
  601. data/vendor/assets/javascripts/highstock/modules/pattern-fill.js +21 -0
  602. data/vendor/assets/javascripts/highstock/modules/pattern-fill.js.map +1 -0
  603. data/vendor/assets/javascripts/highstock/modules/pattern-fill.src.js +634 -0
  604. data/vendor/assets/javascripts/highstock/modules/price-indicator.js +13 -0
  605. data/vendor/assets/javascripts/highstock/modules/price-indicator.js.map +1 -0
  606. data/vendor/assets/javascripts/highstock/modules/price-indicator.src.js +176 -0
  607. data/vendor/assets/javascripts/highstock/modules/sankey.js +22 -0
  608. data/vendor/assets/javascripts/highstock/modules/sankey.js.map +1 -0
  609. data/vendor/assets/javascripts/highstock/modules/sankey.src.js +911 -0
  610. data/vendor/assets/javascripts/highstock/modules/series-label.js +23 -0
  611. data/vendor/assets/javascripts/highstock/modules/series-label.js.map +1 -0
  612. data/vendor/assets/javascripts/highstock/modules/series-label.src.js +1065 -0
  613. data/vendor/assets/javascripts/highstock/modules/solid-gauge.js +15 -0
  614. data/vendor/assets/javascripts/highstock/modules/solid-gauge.js.map +1 -0
  615. data/vendor/assets/javascripts/highstock/modules/solid-gauge.src.js +510 -0
  616. data/vendor/assets/javascripts/highstock/modules/sonification.js +53 -0
  617. data/vendor/assets/javascripts/highstock/modules/sonification.js.map +1 -0
  618. data/vendor/assets/javascripts/highstock/modules/sonification.src.js +3341 -0
  619. data/vendor/assets/javascripts/highstock/modules/static-scale.js +12 -0
  620. data/vendor/assets/javascripts/highstock/modules/static-scale.js.map +1 -0
  621. data/vendor/assets/javascripts/highstock/modules/static-scale.src.js +114 -0
  622. data/vendor/assets/javascripts/highstock/modules/stock-tools.js +65 -0
  623. data/vendor/assets/javascripts/highstock/modules/stock-tools.js.map +1 -0
  624. data/vendor/assets/javascripts/highstock/modules/stock-tools.src.js +3437 -0
  625. data/vendor/assets/javascripts/highstock/modules/stock.js +151 -0
  626. data/vendor/assets/javascripts/highstock/modules/stock.js.map +1 -0
  627. data/vendor/assets/javascripts/highstock/modules/stock.src.js +10907 -0
  628. data/vendor/assets/javascripts/highstock/modules/streamgraph.js +10 -0
  629. data/vendor/assets/javascripts/highstock/modules/streamgraph.js.map +1 -0
  630. data/vendor/assets/javascripts/highstock/modules/streamgraph.src.js +158 -0
  631. data/vendor/assets/javascripts/highstock/modules/sunburst.js +52 -0
  632. data/vendor/assets/javascripts/highstock/modules/sunburst.js.map +1 -0
  633. data/vendor/assets/javascripts/highstock/modules/sunburst.src.js +3174 -0
  634. data/vendor/assets/javascripts/highstock/modules/tilemap.js +26 -0
  635. data/vendor/assets/javascripts/highstock/modules/tilemap.js.map +1 -0
  636. data/vendor/assets/javascripts/highstock/modules/tilemap.src.js +1402 -0
  637. data/vendor/assets/javascripts/highstock/modules/timeline.js +23 -0
  638. data/vendor/assets/javascripts/highstock/modules/timeline.js.map +1 -0
  639. data/vendor/assets/javascripts/highstock/modules/timeline.src.js +778 -0
  640. data/vendor/assets/javascripts/highstock/modules/treegrid.js +50 -0
  641. data/vendor/assets/javascripts/highstock/modules/treegrid.js.map +1 -0
  642. data/vendor/assets/javascripts/highstock/modules/treegrid.src.js +2917 -0
  643. data/vendor/assets/javascripts/highstock/modules/treemap.js +39 -0
  644. data/vendor/assets/javascripts/highstock/modules/treemap.js.map +1 -0
  645. data/vendor/assets/javascripts/highstock/modules/treemap.src.js +2083 -0
  646. data/vendor/assets/javascripts/highstock/modules/variable-pie.js +16 -0
  647. data/vendor/assets/javascripts/highstock/modules/variable-pie.js.map +1 -0
  648. data/vendor/assets/javascripts/highstock/modules/variable-pie.src.js +485 -0
  649. data/vendor/assets/javascripts/highstock/modules/variwide.js +15 -0
  650. data/vendor/assets/javascripts/highstock/modules/variwide.js.map +1 -0
  651. data/vendor/assets/javascripts/highstock/modules/variwide.src.js +376 -0
  652. data/vendor/assets/javascripts/highstock/modules/vector.js +13 -0
  653. data/vendor/assets/javascripts/highstock/modules/vector.js.map +1 -0
  654. data/vendor/assets/javascripts/highstock/modules/vector.src.js +381 -0
  655. data/vendor/assets/javascripts/highstock/modules/venn.js +30 -0
  656. data/vendor/assets/javascripts/highstock/modules/venn.js.map +1 -0
  657. data/vendor/assets/javascripts/highstock/modules/venn.src.js +1624 -0
  658. data/vendor/assets/javascripts/highstock/modules/windbarb.js +17 -0
  659. data/vendor/assets/javascripts/highstock/modules/windbarb.js.map +1 -0
  660. data/vendor/assets/javascripts/highstock/modules/windbarb.src.js +574 -0
  661. data/vendor/assets/javascripts/highstock/modules/wordcloud.js +25 -0
  662. data/vendor/assets/javascripts/highstock/modules/wordcloud.js.map +1 -0
  663. data/vendor/assets/javascripts/highstock/modules/wordcloud.src.js +1475 -0
  664. data/vendor/assets/javascripts/highstock/modules/xrange.js +20 -0
  665. data/vendor/assets/javascripts/highstock/modules/xrange.js.map +1 -0
  666. data/vendor/assets/javascripts/highstock/modules/xrange.src.js +788 -0
  667. data/vendor/assets/javascripts/highstock/themes/avocado.js +9 -0
  668. data/vendor/assets/javascripts/highstock/themes/avocado.js.map +1 -0
  669. data/vendor/assets/javascripts/highstock/themes/avocado.src.js +63 -0
  670. data/vendor/assets/javascripts/highstock/themes/dark-blue.js +15 -0
  671. data/vendor/assets/javascripts/highstock/themes/dark-blue.js.map +1 -0
  672. data/vendor/assets/javascripts/highstock/themes/dark-blue.src.js +285 -0
  673. data/vendor/assets/javascripts/highstock/themes/dark-green.js +15 -0
  674. data/vendor/assets/javascripts/highstock/themes/dark-green.js.map +1 -0
  675. data/vendor/assets/javascripts/highstock/themes/dark-green.src.js +287 -0
  676. data/vendor/assets/javascripts/highstock/themes/dark-unica.js +14 -0
  677. data/vendor/assets/javascripts/highstock/themes/dark-unica.js.map +1 -0
  678. data/vendor/assets/javascripts/highstock/themes/dark-unica.src.js +246 -0
  679. data/vendor/assets/javascripts/highstock/themes/gray.js +15 -0
  680. data/vendor/assets/javascripts/highstock/themes/gray.js.map +1 -0
  681. data/vendor/assets/javascripts/highstock/themes/gray.src.js +293 -0
  682. data/vendor/assets/javascripts/highstock/themes/grid-light.js +11 -0
  683. data/vendor/assets/javascripts/highstock/themes/grid-light.js.map +1 -0
  684. data/vendor/assets/javascripts/highstock/themes/grid-light.src.js +107 -0
  685. data/vendor/assets/javascripts/highstock/themes/grid.js +11 -0
  686. data/vendor/assets/javascripts/highstock/themes/grid.js.map +1 -0
  687. data/vendor/assets/javascripts/highstock/themes/grid.src.js +136 -0
  688. data/vendor/assets/javascripts/highstock/themes/sand-signika.js +11 -0
  689. data/vendor/assets/javascripts/highstock/themes/sand-signika.js.map +1 -0
  690. data/vendor/assets/javascripts/highstock/themes/sand-signika.src.js +137 -0
  691. data/vendor/assets/javascripts/highstock/themes/skies.js +11 -0
  692. data/vendor/assets/javascripts/highstock/themes/skies.js.map +1 -0
  693. data/vendor/assets/javascripts/highstock/themes/skies.src.js +126 -0
  694. data/vendor/assets/javascripts/highstock/themes/sunset.js +9 -0
  695. data/vendor/assets/javascripts/highstock/themes/sunset.js.map +1 -0
  696. data/vendor/assets/javascripts/highstock/themes/sunset.src.js +62 -0
  697. metadata +781 -0
@@ -0,0 +1,21 @@
1
+ /*
2
+ Highcharts JS v7.0.3 (2019-02-06)
3
+
4
+ Indicator series type for Highstock
5
+
6
+ (c) 2010-2019 Pawe Dalek
7
+
8
+ License: www.highcharts.com/license
9
+ */
10
+ (function(q){"object"===typeof module&&module.exports?(q["default"]=q,module.exports=q):"function"===typeof define&&define.amd?define(function(){return q}):q("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(q){(function(n){var q=Math.abs,v=n.noop,w=n.addEvent,y=n.correctFloat,A=n.seriesType,x=n.seriesTypes.column.prototype;A("vbp","sma",{params:{ranges:12,volumeSeriesID:"volume"},zoneLines:{enabled:!0,styles:{color:"#0A9AC9",dashStyle:"LongDash",lineWidth:1}},volumeDivision:{enabled:!0,
11
+ styles:{positiveColor:"rgba(144, 237, 125, 0.8)",negativeColor:"rgba(244, 91, 91, 0.8)"}},animationLimit:1E3,enableMouseTracking:!1,pointPadding:0,zIndex:-1,crisp:!0,dataGrouping:{enabled:!1},dataLabels:{enabled:!0,allowOverlap:!0,verticalAlign:"top",format:"P: {point.volumePos:.2f} | N: {point.volumeNeg:.2f}",padding:0,style:{fontSize:"7px"}}},{nameBase:"Volume by Price",bindTo:{series:!1,eventName:"afterSetExtremes"},calculateOn:"render",markerAttribs:v,drawGraph:v,getColumnMetrics:x.getColumnMetrics,
12
+ crispCol:x.crispCol,init:function(b){var a,c;n.seriesTypes.sma.prototype.init.apply(this,arguments);a=this.options.params;c=this.linkedParent;a=b.get(a.volumeSeriesID);this.addCustomEvents(c,a);return this},addCustomEvents:function(b,a){function c(){e.chart.redraw();e.setData([]);e.zoneStarts=[];e.zoneLinesSVG&&(e.zoneLinesSVG.destroy(),delete e.zoneLinesSVG)}var e=this;e.dataEventsToUnbind.push(w(b,"remove",function(){c()}));a&&e.dataEventsToUnbind.push(w(a,"remove",function(){c()}));return e},animate:function(b){var a=
13
+ this,c={};n.svg&&!b&&(c.translateX=a.yAxis.pos,a.group.animate(c,n.extend(n.animObject(a.options.animation),{step:function(b,c){a.group.attr({scaleX:Math.max(.001,c.pos)})}})),a.animate=null)},drawPoints:function(){this.options.volumeDivision.enabled&&(this.posNegVolume(!0,!0),x.drawPoints.apply(this,arguments),this.posNegVolume(!1,!1));x.drawPoints.apply(this,arguments)},posNegVolume:function(b,a){var c=a?["positive","negative"]:["negative","positive"],e=this.options.volumeDivision,l=this.points.length,
14
+ h=[],d=[],f=0,m,g,t,k;b?(this.posWidths=h,this.negWidths=d):(h=this.posWidths,d=this.negWidths);for(;f<l;f++)k=this.points[f],k[c[0]+"Graphic"]=k.graphic,k.graphic=k[c[1]+"Graphic"],b&&(m=k.shapeArgs.width,g=this.priceZones[f],(t=g.wholeVolumeData)?(h.push(m/t*g.positiveVolumeData),d.push(m/t*g.negativeVolumeData)):(h.push(0),d.push(0))),k.color=a?e.styles.positiveColor:e.styles.negativeColor,k.shapeArgs.width=a?this.posWidths[f]:this.negWidths[f],k.shapeArgs.x=a?k.shapeArgs.x:this.posWidths[f]},
15
+ translate:function(){var b=this,a=b.options,c=b.chart,e=b.yAxis,l=e.min,h=b.options.zoneLines,d=b.priceZones,f=0,m,g,t,k,u,r,p,z,v,w;x.translate.apply(b);m=b.points;m.length&&(p=.5>a.pointPadding?a.pointPadding:.1,a=b.volumeDataArray,g=n.arrayMax(a),t=c.plotWidth/2,z=c.plotTop,k=q(e.toPixels(l)-e.toPixels(l+b.rangeStep)),u=q(e.toPixels(l)-e.toPixels(l+b.rangeStep)),p&&(l=q(k*(1-2*p)),f=q((k-l)/2),k=q(l)),m.forEach(function(a,c){v=a.barX=a.plotX=0;w=a.plotY=e.toPixels(d[c].start)-z-(e.reversed?k-u:
16
+ k)-f;r=y(t*d[c].wholeVolumeData/g);a.pointWidth=r;a.shapeArgs=b.crispCol.apply(b,[v,w,r,k]);a.volumeNeg=d[c].negativeVolumeData;a.volumePos=d[c].positiveVolumeData;a.volumeAll=d[c].wholeVolumeData}),h.enabled&&b.drawZones(c,e,b.zoneStarts,h.styles))},getValues:function(b,a){var c=b.processedXData,e=b.processedYData,l=this.chart,h=a.ranges,d=[],f=[],m=[],g;if(!b.chart)return n.error("Base series not found! In case it has been removed, add a new one.",!0,l);if(!(g=l.get(a.volumeSeriesID)))return n.error("Series "+
17
+ a.volumeSeriesID+" not found! Check `volumeSeriesID`.",!0,l);if((a=n.isArray(e[0]))&&4!==e[0].length)return n.error("Type of "+b.name+" series is different than line, OHLC or candlestick.",!0,l);(this.priceZones=this.specifyZones(a,c,e,h,g)).forEach(function(a,b){d.push([a.x,a.end]);f.push(d[b][0]);m.push(d[b][1])});return{values:d,xData:f,yData:m}},specifyZones:function(b,a,c,e,l){var h;if(b){h=c.length;for(var d=c[0][3],f=d,m=1,g;m<h;m++)g=c[m][3],g<d&&(d=g),g>f&&(f=g);h={min:d,max:f}}else h=!1;
18
+ h=(d=h)?d.min:n.arrayMin(c);g=d?d.max:n.arrayMax(c);var d=this.zoneStarts=[],f=[],t=0,m=1,k;if(!h||!g)return this.points.length&&(this.setData([]),this.zoneStarts=[],this.zoneLinesSVG.destroy()),[];k=this.rangeStep=y(g-h)/e;for(d.push(h);t<e-1;t++)d.push(y(d[t]+k));d.push(g);for(e=d.length;m<e;m++)f.push({index:m-1,x:a[0],start:d[m-1],end:d[m]});return this.volumePerZone(b,f,l,a,c)},volumePerZone:function(b,a,c,e,l){var h=this,d=c.processedXData,f=c.processedYData,m=a.length-1,g=l.length;c=f.length;
19
+ var n,k,u,r,p;q(g-c)&&(e[0]!==d[0]&&f.unshift(0),e[g-1]!==d[c-1]&&f.push(0));h.volumeDataArray=[];a.forEach(function(a){a.wholeVolumeData=0;a.positiveVolumeData=0;for(p=a.negativeVolumeData=0;p<g;p++)u=k=!1,r=b?l[p][3]:l[p],n=p?b?l[p-1][3]:l[p-1]:r,r<=a.start&&0===a.index&&(k=!0),r>=a.end&&a.index===m&&(u=!0),(r>a.start||k)&&(r<a.end||u)&&(a.wholeVolumeData+=f[p],n>r?a.negativeVolumeData+=f[p]:a.positiveVolumeData+=f[p]);h.volumeDataArray.push(a.wholeVolumeData)});return a},drawZones:function(b,a,
20
+ c,e){var l=b.renderer,h=this.zoneLinesSVG,d=[],f=b.plotWidth,m=b.plotTop,g;c.forEach(function(c){g=a.toPixels(c)-m;d=d.concat(b.renderer.crispLine(["M",0,g,"L",f,g],e.lineWidth))});h?h.animate({d:d}):h=this.zoneLinesSVG=l.path(d).attr({"stroke-width":e.lineWidth,stroke:e.color,dashstyle:e.dashStyle,zIndex:this.group.zIndex+.1}).add(this.group)}},{destroy:function(){this.negativeGraphic&&(this.negativeGraphic=this.negativeGraphic.destroy());return n.Point.prototype.destroy.apply(this,arguments)}})})(q)});
21
+ //# sourceMappingURL=volume-by-price.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"volume-by-price.js.map","lineCount":20,"mappings":"A;;;;;;;;;AAUC,SAAS,CAACA,CAAD,CAAU,CACM,QAAtB,GAAI,MAAOC,OAAX,EAAkCA,MAAAC,QAAlC,EACIF,CAAA,CAAQ,SAAR,CACA,CADqBA,CACrB,CAAAC,MAAAC,QAAA,CAAiBF,CAFrB,EAG6B,UAAtB,GAAI,MAAOG,OAAX,EAAoCA,MAAAC,IAApC,CACHD,MAAA,CAAO,QAAS,EAAG,CACf,MAAOH,EADQ,CAAnB,CADG,CAKHA,CAAA,CAA8B,WAAtB,GAAA,MAAOK,WAAP,CAAoCA,UAApC,CAAiDC,IAAAA,EAAzD,CATY,CAAnB,CAAA,CAWC,QAAS,CAACD,CAAD,CAAa,CACnB,SAAS,CAACE,CAAD,CAAI,CAAA,IAsCNC,EAAMC,IAAAD,IAtCA,CAuCNE,EAAOH,CAAAG,KAvCD,CAwCNC,EAAWJ,CAAAI,SAxCL,CAyCNC,EAAeL,CAAAK,aAzCT,CA0CNC,EAAaN,CAAAM,WA1CP,CA2CNC,EAAkBP,CAAAQ,YAAAC,OAAAC,UAWtBJ,EAAA,CACI,KADJ,CAEI,KAFJ,CAgBI,CAIIK,OAAQ,CAIJC,OAAQ,EAJJ,CAUJC,eAAgB,QAVZ,CAJZ,CAmBIC,UAAW,CAIPC,QAAS,CAAA,CAJF,CAWPC,OAAQ,CAEJC,MAAO,SAFH,CAIJC,UAAW,UAJP,CAMJC,UAAW,CANP,CAXD,CAnBf,CA0CIC,eAAgB,CAIZL,QAAS,CAAA,CAJG;AAKZC,OAAQ,CAMJK,cAAe,0BANX,CAYJC,cAAe,wBAZX,CALI,CA1CpB,CA+DIC,eAAgB,GA/DpB,CAgEIC,oBAAqB,CAAA,CAhEzB,CAiEIC,aAAc,CAjElB,CAkEIC,OAAS,EAlEb,CAmEIC,MAAO,CAAA,CAnEX,CAoEIC,aAAc,CACVb,QAAS,CAAA,CADC,CApElB,CAuEIc,WAAY,CACRd,QAAS,CAAA,CADD,CAERe,aAAc,CAAA,CAFN,CAGRC,cAAe,KAHP,CAIRC,OAAQ,qDAJA,CAKRC,QAAS,CALD,CAMRC,MAAO,CACHC,SAAU,KADP,CANC,CAvEhB,CAhBJ,CAqGI,CACIC,SAAU,iBADd,CAEIC,OAAQ,CACJC,OAAQ,CAAA,CADJ,CAEJC,UAAW,kBAFP,CAFZ,CAMIC,YAAa,QANjB,CAOIC,cAAetC,CAPnB,CAQIuC,UAAWvC,CARf,CASIwC,iBAAkBpC,CAAAoC,iBATtB;AAUIC,SAAUrC,CAAAqC,SAVd,CAWIC,KAAMA,QAAS,CAACC,CAAD,CAAQ,CAAA,IAEfnC,CAFe,CAGfoC,CAGJ/C,EAAAQ,YAAAwC,IAAAtC,UAAAmC,KAAAI,MAAA,CALgBC,IAKhB,CAAkDC,SAAlD,CAEAxC,EAAA,CAPgBuC,IAOPE,QAAAzC,OACToC,EAAA,CARgBG,IAQHG,aACbC,EAAA,CAAeR,CAAAS,IAAA,CAAU5C,CAAAE,eAAV,CATCqC,KAWhBM,gBAAA,CAA0BT,CAA1B,CAAsCO,CAAtC,CAEA,OAbgBJ,KADG,CAX3B,CA4BIM,gBAAiBA,QAAS,CAACT,CAAD,CAAaO,CAAb,CAA2B,CAGjDG,QAASA,EAAgB,EAAG,CACxBP,CAAAJ,MAAAY,OAAA,EAEAR,EAAAS,QAAA,CAAkB,EAAlB,CACAT,EAAAU,WAAA,CAAuB,EAEnBV,EAAAW,aAAJ,GACIX,CAAAW,aAAAC,QAAA,EACA,CAAA,OAAOZ,CAAAW,aAFX,CANwB,CAF5B,IAAIX,EAAY,IAgBhBA,EAAAa,mBAAAC,KAAA,CACI5D,CAAA,CAAS2C,CAAT,CAAqB,QAArB,CAA+B,QAAS,EAAG,CACvCU,CAAA,EADuC,CAA3C,CADJ,CAQIH,EAAJ,EACIJ,CAAAa,mBAAAC,KAAA,CACI5D,CAAA,CAASkD,CAAT,CAAuB,QAAvB,CAAiC,QAAS,EAAG,CACzCG,CAAA,EADyC,CAA7C,CADJ,CAOJ,OAAOP,EAjC0C,CA5BzD,CAgEIe,QAASA,QAAS,CAACpB,CAAD,CAAO,CAAA,IACjBP;AAAS,IADQ,CAEjB4B,EAAO,EAEPlE,EAAAmE,IAAJ,EAActB,CAAAA,CAAd,GACIqB,CAAAE,WAaA,CAbkB9B,CAAA+B,MAAAC,IAalB,CAZAhC,CAAAiC,MAAAN,QAAA,CACIC,CADJ,CAEIlE,CAAAwE,OAAA,CAASxE,CAAAyE,WAAA,CAAanC,CAAAc,QAAAsB,UAAb,CAAT,CAAiD,CAC7CC,KAAMA,QAAS,CAACC,CAAD,CAAMC,CAAN,CAAU,CACrBvC,CAAAiC,MAAAL,KAAA,CAAkB,CACdY,OAAQ5E,IAAA6E,IAAA,CAAS,IAAT,CAAgBF,CAAAP,IAAhB,CADM,CAAlB,CADqB,CADoB,CAAjD,CAFJ,CAYA,CAAAhC,CAAA2B,QAAA,CAAiB,IAdrB,CAJqB,CAhE7B,CAqFIe,WAAYA,QAAS,EAAG,CACJ9B,IAEZE,QAAAhC,eAAAL,QAAJ,GAFgBmC,IAGZ+B,aAAA,CAAuB,CAAA,CAAvB,CAA6B,CAAA,CAA7B,CAEA,CADA1E,CAAAyE,WAAA/B,MAAA,CAJYC,IAIZ,CAA4CC,SAA5C,CACA,CALYD,IAKZ+B,aAAA,CAAuB,CAAA,CAAvB,CAA8B,CAAA,CAA9B,CAHJ,CAMA1E,EAAAyE,WAAA/B,MAAA,CARgBC,IAQhB,CAA4CC,SAA5C,CAToB,CArF5B,CAiGI8B,aAAcA,QAAS,CAACC,CAAD,CAAUZ,CAAV,CAAe,CAAA,IAE9Ba,EAAYb,CAAA,CACR,CAAC,UAAD,CAAa,UAAb,CADQ,CAER,CAAC,UAAD,CAAa,UAAb,CAJ0B,CAK9BlD,EAJY8B,IAIKE,QAAAhC,eALa,CAM9BgE,EALYlC,IAKEmC,OAAAC,OANgB;AAO9BC,EAAY,EAPkB,CAQ9BC,EAAY,EARkB,CAS9BC,EAAI,CAT0B,CAU9BC,CAV8B,CAW9BC,CAX8B,CAY9BC,CAZ8B,CAa9BC,CAEAX,EAAJ,EAdgBhC,IAeZqC,UACA,CADsBA,CACtB,CAhBYrC,IAgBZsC,UAAA,CAAsBA,CAF1B,GAIID,CACA,CAnBYrC,IAkBAqC,UACZ,CAAAC,CAAA,CAnBYtC,IAmBAsC,UALhB,CAQA,KAAA,CAAOC,CAAP,CAAWL,CAAX,CAAwBK,CAAA,EAAxB,CACII,CA4BA,CAnDY3C,IAuBJmC,OAAA,CAAiBI,CAAjB,CA4BR,CA3BAI,CAAA,CAAMV,CAAA,CAAU,CAAV,CAAN,CAAqB,SAArB,CA2BA,CA3BkCU,CAAAC,QA2BlC,CA1BAD,CAAAC,QA0BA,CA1BgBD,CAAA,CAAMV,CAAA,CAAU,CAAV,CAAN,CAAqB,SAArB,CA0BhB,CAxBID,CAwBJ,GAvBIQ,CAIA,CAJaG,CAAAE,UAAAC,MAIb,CAHAL,CAGA,CAhCQzC,IA6BI+C,WAAA,CAAqBR,CAArB,CAGZ,CAAA,CAFAG,CAEA,CAFWD,CAAAO,gBAEX,GACIX,CAAAvB,KAAA,CACI0B,CADJ,CACiBE,CADjB,CAC4BD,CAAAQ,mBAD5B,CAGA,CAAAX,CAAAxB,KAAA,CACI0B,CADJ,CACiBE,CADjB,CAC4BD,CAAAS,mBAD5B,CAJJ,GAQIb,CAAAvB,KAAA,CAAe,CAAf,CACA,CAAAwB,CAAAxB,KAAA,CAAe,CAAf,CATJ,CAmBJ,EANA6B,CAAA5E,MAMA,CANcqD,CAAA,CACVlD,CAAAJ,OAAAK,cADU,CAEVD,CAAAJ,OAAAM,cAIJ,CAHAuE,CAAAE,UAAAC,MAGA,CAHwB1B,CAAA,CAhDZpB,IAiDRqC,UAAA,CAAoBE,CAApB,CADoB,CAhDZvC,IAkDRsC,UAAA,CAAoBC,CAApB,CACJ,CAAAI,CAAAE,UAAAM,EAAA,CAAoB/B,CAAA,CAChBuB,CAAAE,UAAAM,EADgB,CAnDRnD,IAqDRqC,UAAA,CAAoBE,CAApB,CAtD0B,CAjG1C;AA0JIa,UAAWA,QAAS,EAAG,CAAA,IACfpD,EAAY,IADG,CAEfE,EAAUF,CAAAE,QAFK,CAGfN,EAAQI,CAAAJ,MAHO,CAIfuB,EAAQnB,CAAAmB,MAJO,CAKfkC,EAAWlC,CAAAmC,IALI,CAMfC,EAAmBvD,CAAAE,QAAAtC,UANJ,CAOfmF,EAAa/C,CAAA+C,WAPE,CAQfS,EAAa,CARE,CASfC,CATe,CAWfC,CAXe,CAYfC,CAZe,CAafC,CAbe,CAefC,CAfe,CAgBfC,CAhBe,CAiBfvF,CAjBe,CAkBfwF,CAlBe,CAmBfC,CAnBe,CAoBfC,CAEJ5G,EAAA+F,UAAArD,MAAA,CAAgCC,CAAhC,CACAyD,EAAA,CAAkBzD,CAAAmC,OAGdsB,EAAArB,OAAJ,GACI7D,CA8CA,CA9CsC,EAAvB,CAAA2B,CAAA3B,aAAA,CACX2B,CAAA3B,aADW,CAEX,EA4CJ,CA3CA2F,CA2CA,CA3CkBlE,CAAAkE,gBA2ClB,CA1CAR,CA0CA,CA1CY5G,CAAAqH,SAAA,CAAWD,CAAX,CA0CZ,CAzCAP,CAyCA,CAzCiB/D,CAAAwE,UAyCjB,CAzCmC,CAyCnC,CAxCAL,CAwCA,CAxCenE,CAAAyE,QAwCf,CAvCAT,CAuCA,CAvCY7G,CAAA,CAAIoE,CAAAmD,SAAA,CAAejB,CAAf,CAAJ,CACRlC,CAAAmD,SAAA,CAAejB,CAAf,CAA0BrD,CAAAuE,UAA1B,CADQ,CAuCZ,CArCAV,CAqCA,CArCe9G,CAAA,CAAIoE,CAAAmD,SAAA,CAAejB,CAAf,CAAJ,CACXlC,CAAAmD,SAAA,CAAejB,CAAf,CAA0BrD,CAAAuE,UAA1B,CADW,CAqCf,CAlCIhG,CAkCJ,GAjCIiG,CAEA,CAFazH,CAAA,CAAI6G,CAAJ,EAAiB,CAAjB,CAAqB,CAArB,CAAyBrF,CAAzB,EAEb,CADAiF,CACA,CADazG,CAAA,EAAK6G,CAAL,CAAiBY,CAAjB,EAA+B,CAA/B,CACb,CAAAZ,CAAA,CAAY7G,CAAA,CAAIyH,CAAJ,CA+BhB,EA5BAf,CAAAgB,QAAA,CAAwB,QAAS,CAAC9B,CAAD,CAAQ+B,CAAR,CAAe,CAC5CV,CAAA,CAAOrB,CAAAqB,KAAP,CAAoBrB,CAAAgC,MAApB,CAAkC,CAClCV,EAAA,CAAOtB,CAAAiC,MAAP,CACIzD,CAAAmD,SAAA,CAAevB,CAAA,CAAW2B,CAAX,CAAAG,MAAf,CADJ,CAEId,CAFJ,EAIQ5C,CAAA2D,SAAA,CACKlB,CADL,CACiBC,CADjB;AAEID,CANZ,EAQIJ,CAEJM,EAAA,CAAW3G,CAAA,CACPwG,CADO,CAEPZ,CAAA,CAAW2B,CAAX,CAAA1B,gBAFO,CAE6BU,CAF7B,CAIXf,EAAAH,WAAA,CAAmBsB,CAEnBnB,EAAAE,UAAA,CAAkB7C,CAAAN,SAAAK,MAAA,CACdC,CADc,CAEd,CAACgE,CAAD,CAAOC,CAAP,CAAaH,CAAb,CAAuBF,CAAvB,CAFc,CAKlBjB,EAAAoC,UAAA,CAAkBhC,CAAA,CAAW2B,CAAX,CAAAxB,mBAClBP,EAAAqC,UAAA,CAAkBjC,CAAA,CAAW2B,CAAX,CAAAzB,mBAClBN,EAAAsC,UAAA,CAAkBlC,CAAA,CAAW2B,CAAX,CAAA1B,gBAzB0B,CAAhD,CA4BA,CAAIO,CAAA1F,QAAJ,EACImC,CAAAkF,UAAA,CACItF,CADJ,CAEIuB,CAFJ,CAGInB,CAAAU,WAHJ,CAII6C,CAAAzF,OAJJ,CAhDR,CA1BmB,CA1J3B,CA6OIqH,UAAWA,QAAS,CAAC/F,CAAD,CAAS3B,CAAT,CAAiB,CAAA,IAE7B2H,EAAUhG,CAAAiG,eAFmB,CAG7BC,EAAUlG,CAAAmG,eAHmB,CAI7B3F,EAHYI,IAGJJ,MAJqB,CAK7BlC,EAASD,CAAAC,OALoB,CAM7B8H,EAAM,EANuB,CAO7BC,EAAQ,EAPqB,CAQ7BC,EAAQ,EARqB,CAU7BtF,CAIJ,IAAKR,CAAAR,CAAAQ,MAAL,CACI,MAAO9C,EAAA6I,MAAA,CACH,oEADG,CAGH,CAAA,CAHG,CAIH/F,CAJG,CASX,IAAM,EAAAQ,CAAA,CAAeR,CAAAS,IAAA,CAAU5C,CAAAE,eAAV,CAAf,CAAN,CACI,MAAOb,EAAA6I,MAAA,CACH,SADG;AAEHlI,CAAAE,eAFG,CAGH,qCAHG,CAIH,CAAA,CAJG,CAKHiC,CALG,CAYX,KAFAgG,CAEA,CAFS9I,CAAA+I,QAAA,CAAUP,CAAA,CAAQ,CAAR,CAAV,CAET,GAAoC,CAApC,GAAcA,CAAA,CAAQ,CAAR,CAAAlD,OAAd,CACI,MAAOtF,EAAA6I,MAAA,CACH,UADG,CAEHvG,CAAA0G,KAFG,CAGH,sDAHG,CAIH,CAAA,CAJG,CAKHlG,CALG,CAmBX6E,EAxDgBzE,IAgDH+C,WAQb0B,CAxDgBzE,IAgDoB+F,aAAA,CAChCH,CADgC,CAEhCR,CAFgC,CAGhCE,CAHgC,CAIhC5H,CAJgC,CAKhC0C,CALgC,CAQpCqE,SAAA,CAAmB,QAAS,CAACuB,CAAD,CAAOtB,CAAP,CAAc,CACtCc,CAAA1E,KAAA,CAAS,CAACkF,CAAA7C,EAAD,CAAS6C,CAAAC,IAAT,CAAT,CACAR,EAAA3E,KAAA,CAAW0E,CAAA,CAAId,CAAJ,CAAA,CAAW,CAAX,CAAX,CACAgB,EAAA5E,KAAA,CAAW0E,CAAA,CAAId,CAAJ,CAAA,CAAW,CAAX,CAAX,CAHsC,CAA1C,CAMA,OAAO,CACHwB,OAAQV,CADL,CAEHC,MAAOA,CAFJ,CAGHC,MAAOA,CAHJ,CA/D0B,CA7OzC,CAmTIK,aAAcA,QAAS,CACnBH,CADmB,CAEnBR,CAFmB,CAGnBE,CAHmB,CAInB5H,CAJmB,CAKnB0C,CALmB,CAMrB,CAEsB,IAAA,CAAA,IAAAwF,CAAA,CAAA,CAvcxBO,CAAAA,CAuciCC,CAvcpBhE,OAMjB,KAP6B,IAEzBkB,EAsciC8C,CAtc3B,CAAK,CAAL,CAAA,CAAQ,CAAR,CAFmB,CAGzBvE,EAAMyB,CAHmB,CAIzBf,EAAI,CAJqB,CAKzB8D,CAEJ,CAAO9D,CAAP,CAAW4D,CAAX,CAAuB5D,CAAA,EAAvB,CACI8D,CAKA,CA2biCD,CAhclB,CAAK7D,CAAL,CAAA,CAAQ,CAAR,CAKf,CAJI8D,CAIJ,CAJmB/C,CAInB,GAHIA,CAGJ,CAHU+C,CAGV,EAAIA,CAAJ,CAAmBxE,CAAnB,GACIA,CADJ,CACUwE,CADV,CAKJ,EAAA,CAAO,CACH/C,IAAKA,CADF,CAEHzB,IAAKA,CAFF,CAsbqB,CAAA,IAAsC,EAAA,CAAA,CAAA,CACtDyE;CAAAA,CAAW,CADXC,CACW,CADK,CACL,EACPA,CAAAjD,IADO,CAEPxG,CAAA0J,SAAA,CAAWlB,CAAX,CACJmB,EAAAA,CAAYF,CAAA,CACRA,CAAA1E,IADQ,CAER/E,CAAAqH,SAAA,CAAWmB,CAAX,CACJ5E,KAAAA,EARYV,IAQCU,WAAbA,CAAoC,EAApCA,CACAqC,EAAa,EADbrC,CAEA6B,EAAI,CAFJ7B,CAGAgG,EAAI,CAHJhG,CAIA6D,CAGJ,IAAK+B,CAAAA,CAAL,EAAkBG,CAAAA,CAAlB,CAMI,MALI,KAAAtE,OAAAC,OAKG,GAJH,IAAA3B,QAAA,CAAa,EAAb,CAEA,CADA,IAAAC,WACA,CADkB,EAClB,CAAA,IAAAC,aAAAC,QAAA,EAEG,EAAA,EAGX2D,EAAA,CAxBgBvE,IAwBJuE,UAAZ,CACIpH,CAAA,CAAasJ,CAAb,CAAyBH,CAAzB,CADJ,CACyC5I,CAGzC,KAFAgD,CAAAI,KAAA,CAAgBwF,CAAhB,CAEA,CAAO/D,CAAP,CAAW7E,CAAX,CAAoB,CAApB,CAAuB6E,CAAA,EAAvB,CACI7B,CAAAI,KAAA,CAAgB3D,CAAA,CAAauD,CAAA,CAAW6B,CAAX,CAAb,CAA6BgC,CAA7B,CAAhB,CAGJ7D,EAAAI,KAAA,CAAgB2F,CAAhB,CAIA,KAHAE,CAGA,CAHmBjG,CAAA0B,OAGnB,CAAOsE,CAAP,CAAWC,CAAX,CAA6BD,CAAA,EAA7B,CACI3D,CAAAjC,KAAA,CAAgB,CACZ4D,MAAOgC,CAAPhC,CAAW,CADC,CAEZvB,EAAGiC,CAAA,CAAQ,CAAR,CAFS,CAGZP,MAAOnE,CAAA,CAAWgG,CAAX,CAAe,CAAf,CAHK,CAIZT,IAAKvF,CAAA,CAAWgG,CAAX,CAJO,CAAhB,CAQJ,OA7CgB1G,KA6CT4G,cAAA,CACHhB,CADG,CAEH7C,CAFG,CAGH3C,CAHG,CAIHgF,CAJG,CAKHE,CALG,CA9CT,CAzTN,CAgXIsB,cAAeA,QAAS,CACpBhB,CADoB,CAEpB7C,CAFoB,CAGpB3C,CAHoB,CAIpBgF,CAJoB,CAKpBE,CALoB,CAMtB,CAAA,IACMtF,EAAY,IADlB,CAEM6G,EAAczG,CAAAiF,eAFpB,CAGMyB,EAAc1G,CAAAmF,eAHpB,CAIMwB,EAAgBhE,CAAAX,OAAhB2E,CAAoC,CAJ1C,CAKMC,EAAmB1B,CAAAlD,OACnB6E,EAAAA,CAAqBH,CAAA1E,OAN3B;IAOM8E,CAPN,CAQMC,CARN,CASMC,CATN,CAUMC,CAVN,CAWM9E,CAGAxF,EAAA,CAAIiK,CAAJ,CAAuBC,CAAvB,CAAJ,GAGQ7B,CAAA,CAAQ,CAAR,CAMJ,GANmByB,CAAA,CAAY,CAAZ,CAMnB,EALIC,CAAAQ,QAAA,CAAoB,CAApB,CAKJ,CACIlC,CAAA,CAAQ4B,CAAR,CAA2B,CAA3B,CADJ,GAEIH,CAAA,CAAYI,CAAZ,CAAiC,CAAjC,CAFJ,EAIIH,CAAAhG,KAAA,CAAiB,CAAjB,CAbR,CAiBAd,EAAAkE,gBAAA,CAA4B,EAE5BnB,EAAA0B,QAAA,CAAmB,QAAS,CAACuB,CAAD,CAAO,CAC/BA,CAAAhD,gBAAA,CAAuB,CACvBgD,EAAA/C,mBAAA,CAA0B,CAG1B,KAAKV,CAAL,CAFAyD,CAAA9C,mBAEA,CAF0B,CAE1B,CAAYX,CAAZ,CAAgByE,CAAhB,CAAkCzE,CAAA,EAAlC,CAEI6E,CAkBA,CAnBAD,CAmBA,CAnBY,CAAA,CAmBZ,CAjBAE,CAiBA,CAjBQzB,CAAA,CAASN,CAAA,CAAQ/C,CAAR,CAAA,CAAW,CAAX,CAAT,CAAyB+C,CAAA,CAAQ/C,CAAR,CAiBjC,CAhBA2E,CAgBA,CAhBgB3E,CAAA,CACXqD,CAAA,CAASN,CAAA,CAAQ/C,CAAR,CAAY,CAAZ,CAAA,CAAe,CAAf,CAAT,CAA6B+C,CAAA,CAAQ/C,CAAR,CAAY,CAAZ,CADlB,CAEZ8E,CAcJ,CAVIA,CAUJ,EAVarB,CAAAnB,MAUb,EAV0C,CAU1C,GAV2BmB,CAAAtB,MAU3B,GATIyC,CASJ,CATgB,CAAA,CAShB,EAJIE,CAIJ,EAJarB,CAAAC,IAIb,EAJyBD,CAAAtB,MAIzB,GAJwCqC,CAIxC,GAHIK,CAGJ,CAHc,CAAA,CAGd,GACKC,CADL,CACarB,CAAAnB,MADb,EAC2BsC,CAD3B,IAEKE,CAFL,CAEarB,CAAAC,IAFb,EAEyBmB,CAFzB,IAIIpB,CAAAhD,gBAEA,EAFwB8D,CAAA,CAAYvE,CAAZ,CAExB,CAAI2E,CAAJ,CAAoBG,CAApB,CACIrB,CAAA9C,mBADJ,EAC+B4D,CAAA,CAAYvE,CAAZ,CAD/B,CAGIyD,CAAA/C,mBAHJ,EAG+B6D,CAAA,CAAYvE,CAAZ,CATnC,CAaJvC,EAAAkE,gBAAApD,KAAA,CAA+BkF,CAAAhD,gBAA/B,CAtC+B,CAAnC,CAyCA,OAAOD,EA1ET,CAtXN,CAmcImC,UAAWA,QAAS,CAACtF,CAAD,CAAQuB,CAAR;AAAeoG,CAAf,CAA4BC,CAA5B,CAAyC,CAAA,IAErDC,EAAW7H,CAAA6H,SAF0C,CAGrD9G,EAFYX,IAEGW,aAHsC,CAIrD+G,EAAgB,EAJqC,CAMrDC,EAAe/H,CAAAwE,UANsC,CAOrDwD,EAAiBhI,CAAAyE,QAPoC,CAQrDwD,CAEJN,EAAA9C,QAAA,CAAoB,QAAS,CAAC4C,CAAD,CAAQ,CACjCQ,CAAA,CAAkB1G,CAAAmD,SAAA,CAAe+C,CAAf,CAAlB,CAA0CO,CAC1CF,EAAA,CAAgBA,CAAAI,OAAA,CAAqBlI,CAAA6H,SAAAM,UAAA,CAAyB,CAC1D,GAD0D,CAPhDC,CAOgD,CAG1DH,CAH0D,CAI1D,GAJ0D,CAK1DF,CAL0D,CAM1DE,CAN0D,CAAzB,CAOlCL,CAAAvJ,UAPkC,CAArB,CAFiB,CAArC,CAaI0C,EAAJ,CACIA,CAAAI,QAAA,CAAqB,CACjBkH,EAAGP,CADc,CAArB,CADJ,CAKI/G,CALJ,CAtBgBX,IA2BGW,aALnB,CAMQ8G,CAAAS,KAAA,CAAcR,CAAd,CAAA1G,KAAA,CAAkC,CAC9B,eAAgBwG,CAAAvJ,UADc,CAE9B,OAAUuJ,CAAAzJ,MAFoB,CAG9B,UAAayJ,CAAAxJ,UAHiB,CAI9B,OAhCIgC,IAgCMqB,MAAA7C,OAAV,CAAmC,EAJL,CAAlC,CAAA2J,IAAA,CA5BQnI,IAkCCqB,MANT,CA7BiD,CAncjE,CArGJ,CAklBI,CAEIT,QAASA,QAAS,EAAG,CACb,IAAAwH,gBAAJ,GACI,IAAAA,gBADJ,CAC2B,IAAAA,gBAAAxH,QAAA,EAD3B,CAGA,OAAO9D,EAAAuL,MAAA7K,UAAAoD,QAAAb,MAAA,CAAgC,IAAhC,CAAsCE,SAAtC,CAJU,CAFzB,CAllBJ,CAtDU,CAAb,CAAA,CA8pBCrD,CA9pBD,CADmB,CAXvB;","sources":["volume-by-price.src.js"],"names":["factory","module","exports","define","amd","Highcharts","undefined","H","abs","Math","noop","addEvent","correctFloat","seriesType","columnPrototype","seriesTypes","column","prototype","params","ranges","volumeSeriesID","zoneLines","enabled","styles","color","dashStyle","lineWidth","volumeDivision","positiveColor","negativeColor","animationLimit","enableMouseTracking","pointPadding","zIndex","crisp","dataGrouping","dataLabels","allowOverlap","verticalAlign","format","padding","style","fontSize","nameBase","bindTo","series","eventName","calculateOn","markerAttribs","drawGraph","getColumnMetrics","crispCol","init","chart","baseSeries","sma","apply","indicator","arguments","options","linkedParent","volumeSeries","get","addCustomEvents","toEmptyIndicator","redraw","setData","zoneStarts","zoneLinesSVG","destroy","dataEventsToUnbind","push","animate","attr","svg","translateX","yAxis","pos","group","extend","animObject","animation","step","val","fx","scaleX","max","drawPoints","posNegVolume","initVol","signOrder","pointLength","points","length","posWidths","negWidths","i","pointWidth","priceZone","wholeVol","point","graphic","shapeArgs","width","priceZones","wholeVolumeData","positiveVolumeData","negativeVolumeData","x","translate","yAxisMin","min","zoneLinesOptions","yBarOffset","indicatorPoints","maxVolume","primalBarWidth","barHeight","oldBarHeight","barWidth","chartPlotTop","barX","barY","volumeDataArray","arrayMax","plotWidth","plotTop","toPixels","rangeStep","barHeightP","forEach","index","plotX","plotY","start","reversed","volumeNeg","volumePos","volumeAll","drawZones","getValues","xValues","processedXData","yValues","processedYData","VBP","xData","yData","error","isOHLC","isArray","name","specifyZones","zone","end","values","dataLength","data","currentPoint","lowRange","rangeExtremes","arrayMin","highRange","j","zoneStartsLength","volumePerZone","volumeXData","volumeYData","lastZoneIndex","baseSeriesLength","volumeSeriesLength","previousValue","startFlag","endFlag","value","unshift","zonesValues","zonesStyles","renderer","zoneLinesPath","rightLinePos","verticalOffset","verticalLinePos","concat","crispLine","leftLinePos","d","path","add","negativeGraphic","Point"]}
@@ -0,0 +1,698 @@
1
+ /**
2
+ * @license Highcharts JS v7.0.3 (2019-02-06)
3
+ *
4
+ * Indicator series type for Highstock
5
+ *
6
+ * (c) 2010-2019 Paweł Dalek
7
+ *
8
+ * License: www.highcharts.com/license
9
+ */
10
+ 'use strict';
11
+ (function (factory) {
12
+ if (typeof module === 'object' && module.exports) {
13
+ factory['default'] = factory;
14
+ module.exports = factory;
15
+ } else if (typeof define === 'function' && define.amd) {
16
+ define(function () {
17
+ return factory;
18
+ });
19
+ } else {
20
+ factory(typeof Highcharts !== 'undefined' ? Highcharts : undefined);
21
+ }
22
+ }(function (Highcharts) {
23
+ (function (H) {
24
+ /* *
25
+ *
26
+ * (c) 2010-2019 Paweł Dalek
27
+ *
28
+ * Volume By Price (VBP) indicator for Highstock
29
+ *
30
+ * License: www.highcharts.com/license
31
+ *
32
+ * */
33
+
34
+
35
+
36
+ // Utils
37
+ function arrayExtremesOHLC(data) {
38
+ var dataLength = data.length,
39
+ min = data[0][3],
40
+ max = min,
41
+ i = 1,
42
+ currentPoint;
43
+
44
+ for (; i < dataLength; i++) {
45
+ currentPoint = data[i][3];
46
+ if (currentPoint < min) {
47
+ min = currentPoint;
48
+ }
49
+
50
+ if (currentPoint > max) {
51
+ max = currentPoint;
52
+ }
53
+ }
54
+
55
+ return {
56
+ min: min,
57
+ max: max
58
+ };
59
+ }
60
+
61
+ var abs = Math.abs,
62
+ noop = H.noop,
63
+ addEvent = H.addEvent,
64
+ correctFloat = H.correctFloat,
65
+ seriesType = H.seriesType,
66
+ columnPrototype = H.seriesTypes.column.prototype;
67
+
68
+ /**
69
+ * The Volume By Price (VBP) series type.
70
+ *
71
+ * @private
72
+ * @class
73
+ * @name Highcharts.seriesTypes.vbp
74
+ *
75
+ * @augments Highcharts.Series
76
+ */
77
+ seriesType(
78
+ 'vbp',
79
+ 'sma',
80
+ /**
81
+ * Volume By Price indicator.
82
+ *
83
+ * This series requires `linkedTo` option to be set.
84
+ *
85
+ * @sample stock/indicators/volume-by-price
86
+ * Volume By Price indicator
87
+ *
88
+ * @extends plotOptions.sma
89
+ * @since 6.0.0
90
+ * @product highstock
91
+ * @optionparent plotOptions.vbp
92
+ */
93
+ {
94
+ /**
95
+ * @excluding index, period
96
+ */
97
+ params: {
98
+ /**
99
+ * The number of price zones.
100
+ */
101
+ ranges: 12,
102
+ /**
103
+ * The id of volume series which is mandatory. For example using
104
+ * OHLC data, volumeSeriesID='volume' means the indicator will be
105
+ * calculated using OHLC and volume values.
106
+ */
107
+ volumeSeriesID: 'volume'
108
+ },
109
+ /**
110
+ * The styles for lines which determine price zones.
111
+ */
112
+ zoneLines: {
113
+ /**
114
+ * Enable/disable zone lines.
115
+ */
116
+ enabled: true,
117
+ /**
118
+ * Specify the style of zone lines.
119
+ *
120
+ * @type {Highcharts.CSSObject}
121
+ * @default {"color": "#0A9AC9", "dashStyle": "LongDash", "lineWidth": 1}
122
+ */
123
+ styles: {
124
+ /** @ignore-options */
125
+ color: '#0A9AC9',
126
+ /** @ignore-options */
127
+ dashStyle: 'LongDash',
128
+ /** @ignore-options */
129
+ lineWidth: 1
130
+ }
131
+ },
132
+ /**
133
+ * The styles for bars when volume is divided into positive/negative.
134
+ */
135
+ volumeDivision: {
136
+ /**
137
+ * Option to control if volume is divided.
138
+ */
139
+ enabled: true,
140
+ styles: {
141
+ /**
142
+ * Color of positive volume bars.
143
+ *
144
+ * @type {Highcharts.ColorString}
145
+ */
146
+ positiveColor: 'rgba(144, 237, 125, 0.8)',
147
+ /**
148
+ * Color of negative volume bars.
149
+ *
150
+ * @type {Highcharts.ColorString}
151
+ */
152
+ negativeColor: 'rgba(244, 91, 91, 0.8)'
153
+ }
154
+ },
155
+ // To enable series animation; must be animationLimit > pointCount
156
+ animationLimit: 1000,
157
+ enableMouseTracking: false,
158
+ pointPadding: 0,
159
+ zIndex: -1,
160
+ crisp: true,
161
+ dataGrouping: {
162
+ enabled: false
163
+ },
164
+ dataLabels: {
165
+ enabled: true,
166
+ allowOverlap: true,
167
+ verticalAlign: 'top',
168
+ format: 'P: {point.volumePos:.2f} | N: {point.volumeNeg:.2f}',
169
+ padding: 0,
170
+ style: {
171
+ fontSize: '7px'
172
+ }
173
+ }
174
+ },
175
+ /**
176
+ * @lends Highcharts.Series#
177
+ */
178
+ {
179
+ nameBase: 'Volume by Price',
180
+ bindTo: {
181
+ series: false,
182
+ eventName: 'afterSetExtremes'
183
+ },
184
+ calculateOn: 'render',
185
+ markerAttribs: noop,
186
+ drawGraph: noop,
187
+ getColumnMetrics: columnPrototype.getColumnMetrics,
188
+ crispCol: columnPrototype.crispCol,
189
+ init: function (chart) {
190
+ var indicator = this,
191
+ params,
192
+ baseSeries,
193
+ volumeSeries;
194
+
195
+ H.seriesTypes.sma.prototype.init.apply(indicator, arguments);
196
+
197
+ params = indicator.options.params;
198
+ baseSeries = indicator.linkedParent;
199
+ volumeSeries = chart.get(params.volumeSeriesID);
200
+
201
+ indicator.addCustomEvents(baseSeries, volumeSeries);
202
+
203
+ return indicator;
204
+ },
205
+ // Adds events related with removing series
206
+ addCustomEvents: function (baseSeries, volumeSeries) {
207
+ var indicator = this;
208
+
209
+ function toEmptyIndicator() {
210
+ indicator.chart.redraw();
211
+
212
+ indicator.setData([]);
213
+ indicator.zoneStarts = [];
214
+
215
+ if (indicator.zoneLinesSVG) {
216
+ indicator.zoneLinesSVG.destroy();
217
+ delete indicator.zoneLinesSVG;
218
+ }
219
+ }
220
+
221
+ // If base series is deleted, indicator series data is filled with
222
+ // an empty array
223
+ indicator.dataEventsToUnbind.push(
224
+ addEvent(baseSeries, 'remove', function () {
225
+ toEmptyIndicator();
226
+ })
227
+ );
228
+
229
+ // If volume series is deleted, indicator series data is filled with
230
+ // an empty array
231
+ if (volumeSeries) {
232
+ indicator.dataEventsToUnbind.push(
233
+ addEvent(volumeSeries, 'remove', function () {
234
+ toEmptyIndicator();
235
+ })
236
+ );
237
+ }
238
+
239
+ return indicator;
240
+ },
241
+ // Initial animation
242
+ animate: function (init) {
243
+ var series = this,
244
+ attr = {};
245
+
246
+ if (H.svg && !init) {
247
+ attr.translateX = series.yAxis.pos;
248
+ series.group.animate(
249
+ attr,
250
+ H.extend(H.animObject(series.options.animation), {
251
+ step: function (val, fx) {
252
+ series.group.attr({
253
+ scaleX: Math.max(0.001, fx.pos)
254
+ });
255
+ }
256
+ })
257
+ );
258
+
259
+ // Delete this function to allow it only once
260
+ series.animate = null;
261
+ }
262
+ },
263
+ drawPoints: function () {
264
+ var indicator = this;
265
+
266
+ if (indicator.options.volumeDivision.enabled) {
267
+ indicator.posNegVolume(true, true);
268
+ columnPrototype.drawPoints.apply(indicator, arguments);
269
+ indicator.posNegVolume(false, false);
270
+ }
271
+
272
+ columnPrototype.drawPoints.apply(indicator, arguments);
273
+ },
274
+ // Function responsible for dividing volume into positive and negative
275
+ posNegVolume: function (initVol, pos) {
276
+ var indicator = this,
277
+ signOrder = pos ?
278
+ ['positive', 'negative'] :
279
+ ['negative', 'positive'],
280
+ volumeDivision = indicator.options.volumeDivision,
281
+ pointLength = indicator.points.length,
282
+ posWidths = [],
283
+ negWidths = [],
284
+ i = 0,
285
+ pointWidth,
286
+ priceZone,
287
+ wholeVol,
288
+ point;
289
+
290
+ if (initVol) {
291
+ indicator.posWidths = posWidths;
292
+ indicator.negWidths = negWidths;
293
+ } else {
294
+ posWidths = indicator.posWidths;
295
+ negWidths = indicator.negWidths;
296
+ }
297
+
298
+ for (; i < pointLength; i++) {
299
+ point = indicator.points[i];
300
+ point[signOrder[0] + 'Graphic'] = point.graphic;
301
+ point.graphic = point[signOrder[1] + 'Graphic'];
302
+
303
+ if (initVol) {
304
+ pointWidth = point.shapeArgs.width;
305
+ priceZone = indicator.priceZones[i];
306
+ wholeVol = priceZone.wholeVolumeData;
307
+
308
+ if (wholeVol) {
309
+ posWidths.push(
310
+ pointWidth / wholeVol * priceZone.positiveVolumeData
311
+ );
312
+ negWidths.push(
313
+ pointWidth / wholeVol * priceZone.negativeVolumeData
314
+ );
315
+ } else {
316
+ posWidths.push(0);
317
+ negWidths.push(0);
318
+ }
319
+ }
320
+
321
+ point.color = pos ?
322
+ volumeDivision.styles.positiveColor :
323
+ volumeDivision.styles.negativeColor;
324
+ point.shapeArgs.width = pos ?
325
+ indicator.posWidths[i] :
326
+ indicator.negWidths[i];
327
+ point.shapeArgs.x = pos ?
328
+ point.shapeArgs.x :
329
+ indicator.posWidths[i];
330
+ }
331
+ },
332
+ translate: function () {
333
+ var indicator = this,
334
+ options = indicator.options,
335
+ chart = indicator.chart,
336
+ yAxis = indicator.yAxis,
337
+ yAxisMin = yAxis.min,
338
+ zoneLinesOptions = indicator.options.zoneLines,
339
+ priceZones = indicator.priceZones,
340
+ yBarOffset = 0,
341
+ indicatorPoints,
342
+ volumeDataArray,
343
+ maxVolume,
344
+ primalBarWidth,
345
+ barHeight,
346
+ barHeightP,
347
+ oldBarHeight,
348
+ barWidth,
349
+ pointPadding,
350
+ chartPlotTop,
351
+ barX,
352
+ barY;
353
+
354
+ columnPrototype.translate.apply(indicator);
355
+ indicatorPoints = indicator.points;
356
+
357
+ // Do translate operation when points exist
358
+ if (indicatorPoints.length) {
359
+ pointPadding = options.pointPadding < 0.5 ?
360
+ options.pointPadding :
361
+ 0.1;
362
+ volumeDataArray = indicator.volumeDataArray;
363
+ maxVolume = H.arrayMax(volumeDataArray);
364
+ primalBarWidth = chart.plotWidth / 2;
365
+ chartPlotTop = chart.plotTop;
366
+ barHeight = abs(yAxis.toPixels(yAxisMin) -
367
+ yAxis.toPixels(yAxisMin + indicator.rangeStep));
368
+ oldBarHeight = abs(yAxis.toPixels(yAxisMin) -
369
+ yAxis.toPixels(yAxisMin + indicator.rangeStep));
370
+
371
+ if (pointPadding) {
372
+ barHeightP = abs(barHeight * (1 - 2 * pointPadding));
373
+ yBarOffset = abs((barHeight - barHeightP) / 2);
374
+ barHeight = abs(barHeightP);
375
+ }
376
+
377
+ indicatorPoints.forEach(function (point, index) {
378
+ barX = point.barX = point.plotX = 0;
379
+ barY = point.plotY = (
380
+ yAxis.toPixels(priceZones[index].start) -
381
+ chartPlotTop -
382
+ (
383
+ yAxis.reversed ?
384
+ (barHeight - oldBarHeight) :
385
+ barHeight
386
+ ) -
387
+ yBarOffset
388
+ );
389
+ barWidth = correctFloat(
390
+ primalBarWidth *
391
+ priceZones[index].wholeVolumeData / maxVolume
392
+ );
393
+ point.pointWidth = barWidth;
394
+
395
+ point.shapeArgs = indicator.crispCol.apply( // eslint-disable-line no-useless-call
396
+ indicator,
397
+ [barX, barY, barWidth, barHeight]
398
+ );
399
+
400
+ point.volumeNeg = priceZones[index].negativeVolumeData;
401
+ point.volumePos = priceZones[index].positiveVolumeData;
402
+ point.volumeAll = priceZones[index].wholeVolumeData;
403
+ });
404
+
405
+ if (zoneLinesOptions.enabled) {
406
+ indicator.drawZones(
407
+ chart,
408
+ yAxis,
409
+ indicator.zoneStarts,
410
+ zoneLinesOptions.styles
411
+ );
412
+ }
413
+ }
414
+ },
415
+ getValues: function (series, params) {
416
+ var indicator = this,
417
+ xValues = series.processedXData,
418
+ yValues = series.processedYData,
419
+ chart = indicator.chart,
420
+ ranges = params.ranges,
421
+ VBP = [],
422
+ xData = [],
423
+ yData = [],
424
+ isOHLC,
425
+ volumeSeries,
426
+ priceZones;
427
+
428
+ // Checks if base series exists
429
+ if (!series.chart) {
430
+ return H.error(
431
+ 'Base series not found! In case it has been removed, add ' +
432
+ 'a new one.',
433
+ true,
434
+ chart
435
+ );
436
+ }
437
+
438
+ // Checks if volume series exists
439
+ if (!(volumeSeries = chart.get(params.volumeSeriesID))) {
440
+ return H.error(
441
+ 'Series ' +
442
+ params.volumeSeriesID +
443
+ ' not found! Check `volumeSeriesID`.',
444
+ true,
445
+ chart
446
+ );
447
+ }
448
+
449
+ // Checks if series data fits the OHLC format
450
+ isOHLC = H.isArray(yValues[0]);
451
+
452
+ if (isOHLC && yValues[0].length !== 4) {
453
+ return H.error(
454
+ 'Type of ' +
455
+ series.name +
456
+ ' series is different than line, OHLC or candlestick.',
457
+ true,
458
+ chart
459
+ );
460
+ }
461
+
462
+ // Price zones contains all the information about the zones (index,
463
+ // start, end, volumes, etc.)
464
+ priceZones = indicator.priceZones = indicator.specifyZones(
465
+ isOHLC,
466
+ xValues,
467
+ yValues,
468
+ ranges,
469
+ volumeSeries
470
+ );
471
+
472
+ priceZones.forEach(function (zone, index) {
473
+ VBP.push([zone.x, zone.end]);
474
+ xData.push(VBP[index][0]);
475
+ yData.push(VBP[index][1]);
476
+ });
477
+
478
+ return {
479
+ values: VBP,
480
+ xData: xData,
481
+ yData: yData
482
+ };
483
+ },
484
+ // Specifing where each zone should start ans end
485
+ specifyZones: function (
486
+ isOHLC,
487
+ xValues,
488
+ yValues,
489
+ ranges,
490
+ volumeSeries
491
+ ) {
492
+ var indicator = this,
493
+ rangeExtremes = isOHLC ? arrayExtremesOHLC(yValues) : false,
494
+ lowRange = rangeExtremes ?
495
+ rangeExtremes.min :
496
+ H.arrayMin(yValues),
497
+ highRange = rangeExtremes ?
498
+ rangeExtremes.max :
499
+ H.arrayMax(yValues),
500
+ zoneStarts = indicator.zoneStarts = [],
501
+ priceZones = [],
502
+ i = 0,
503
+ j = 1,
504
+ rangeStep,
505
+ zoneStartsLength;
506
+
507
+ if (!lowRange || !highRange) {
508
+ if (this.points.length) {
509
+ this.setData([]);
510
+ this.zoneStarts = [];
511
+ this.zoneLinesSVG.destroy();
512
+ }
513
+ return [];
514
+ }
515
+
516
+ rangeStep = indicator.rangeStep =
517
+ correctFloat(highRange - lowRange) / ranges;
518
+ zoneStarts.push(lowRange);
519
+
520
+ for (; i < ranges - 1; i++) {
521
+ zoneStarts.push(correctFloat(zoneStarts[i] + rangeStep));
522
+ }
523
+
524
+ zoneStarts.push(highRange);
525
+ zoneStartsLength = zoneStarts.length;
526
+
527
+ // Creating zones
528
+ for (; j < zoneStartsLength; j++) {
529
+ priceZones.push({
530
+ index: j - 1,
531
+ x: xValues[0],
532
+ start: zoneStarts[j - 1],
533
+ end: zoneStarts[j]
534
+ });
535
+ }
536
+
537
+ return indicator.volumePerZone(
538
+ isOHLC,
539
+ priceZones,
540
+ volumeSeries,
541
+ xValues,
542
+ yValues
543
+ );
544
+ },
545
+ // Calculating sum of volume values for a specific zone
546
+ volumePerZone: function (
547
+ isOHLC,
548
+ priceZones,
549
+ volumeSeries,
550
+ xValues,
551
+ yValues
552
+ ) {
553
+ var indicator = this,
554
+ volumeXData = volumeSeries.processedXData,
555
+ volumeYData = volumeSeries.processedYData,
556
+ lastZoneIndex = priceZones.length - 1,
557
+ baseSeriesLength = yValues.length,
558
+ volumeSeriesLength = volumeYData.length,
559
+ previousValue,
560
+ startFlag,
561
+ endFlag,
562
+ value,
563
+ i;
564
+
565
+ // Checks if each point has a corresponding volume value
566
+ if (abs(baseSeriesLength - volumeSeriesLength)) {
567
+ // If the first point don't have volume, add 0 value at the
568
+ // beggining of the volume array
569
+ if (xValues[0] !== volumeXData[0]) {
570
+ volumeYData.unshift(0);
571
+ }
572
+
573
+ // If the last point don't have volume, add 0 value at the end
574
+ // of the volume array
575
+ if (
576
+ xValues[baseSeriesLength - 1] !==
577
+ volumeXData[volumeSeriesLength - 1]
578
+ ) {
579
+ volumeYData.push(0);
580
+ }
581
+ }
582
+
583
+ indicator.volumeDataArray = [];
584
+
585
+ priceZones.forEach(function (zone) {
586
+ zone.wholeVolumeData = 0;
587
+ zone.positiveVolumeData = 0;
588
+ zone.negativeVolumeData = 0;
589
+
590
+ for (i = 0; i < baseSeriesLength; i++) {
591
+ startFlag = false;
592
+ endFlag = false;
593
+ value = isOHLC ? yValues[i][3] : yValues[i];
594
+ previousValue = i ?
595
+ (isOHLC ? yValues[i - 1][3] : yValues[i - 1]) :
596
+ value;
597
+
598
+ // Checks if this is the point with the lowest close value
599
+ // and if so, adds it calculations
600
+ if (value <= zone.start && zone.index === 0) {
601
+ startFlag = true;
602
+ }
603
+
604
+ // Checks if this is the point with the highest close value
605
+ // and if so, adds it calculations
606
+ if (value >= zone.end && zone.index === lastZoneIndex) {
607
+ endFlag = true;
608
+ }
609
+
610
+ if (
611
+ (value > zone.start || startFlag) &&
612
+ (value < zone.end || endFlag)
613
+ ) {
614
+ zone.wholeVolumeData += volumeYData[i];
615
+
616
+ if (previousValue > value) {
617
+ zone.negativeVolumeData += volumeYData[i];
618
+ } else {
619
+ zone.positiveVolumeData += volumeYData[i];
620
+ }
621
+ }
622
+ }
623
+ indicator.volumeDataArray.push(zone.wholeVolumeData);
624
+ });
625
+
626
+ return priceZones;
627
+ },
628
+ // Function responsoble for drawing additional lines indicating zones
629
+ drawZones: function (chart, yAxis, zonesValues, zonesStyles) {
630
+ var indicator = this,
631
+ renderer = chart.renderer,
632
+ zoneLinesSVG = indicator.zoneLinesSVG,
633
+ zoneLinesPath = [],
634
+ leftLinePos = 0,
635
+ rightLinePos = chart.plotWidth,
636
+ verticalOffset = chart.plotTop,
637
+ verticalLinePos;
638
+
639
+ zonesValues.forEach(function (value) {
640
+ verticalLinePos = yAxis.toPixels(value) - verticalOffset;
641
+ zoneLinesPath = zoneLinesPath.concat(chart.renderer.crispLine([
642
+ 'M',
643
+ leftLinePos,
644
+ verticalLinePos,
645
+ 'L',
646
+ rightLinePos,
647
+ verticalLinePos
648
+ ], zonesStyles.lineWidth));
649
+ });
650
+
651
+ // Create zone lines one path or update it while animating
652
+ if (zoneLinesSVG) {
653
+ zoneLinesSVG.animate({
654
+ d: zoneLinesPath
655
+ });
656
+ } else {
657
+ zoneLinesSVG = indicator.zoneLinesSVG =
658
+ renderer.path(zoneLinesPath).attr({
659
+ 'stroke-width': zonesStyles.lineWidth,
660
+ 'stroke': zonesStyles.color,
661
+ 'dashstyle': zonesStyles.dashStyle,
662
+ 'zIndex': indicator.group.zIndex + 0.1
663
+ })
664
+ .add(indicator.group);
665
+ }
666
+ }
667
+ },
668
+ /**
669
+ * @lends Highcharts.Point#
670
+ */
671
+ {
672
+ // Required for destroying negative part of volume
673
+ destroy: function () {
674
+ if (this.negativeGraphic) {
675
+ this.negativeGraphic = this.negativeGraphic.destroy();
676
+ }
677
+ return H.Point.prototype.destroy.apply(this, arguments);
678
+ }
679
+ }
680
+ );
681
+
682
+ /**
683
+ * A `Volume By Price (VBP)` series. If the [type](#series.vbp.type) option is
684
+ * not specified, it is inherited from [chart.type](#chart.type).
685
+ *
686
+ * @extends series,plotOptions.vbp
687
+ * @since 6.0.0
688
+ * @product highstock
689
+ * @excluding dataParser, dataURL
690
+ * @apioption series.vbp
691
+ */
692
+
693
+ }(Highcharts));
694
+ return (function () {
695
+
696
+
697
+ }());
698
+ }));