!/**
 * Highstock JS v13.0.0 (2026-06-11)
 * @module highcharts/indicators/chaikin
 * @requires highcharts
 * @requires highcharts/modules/stock
 *
 * Indicator series type for Highcharts Stock
 *
 * (c) 2010-2026 Highsoft AS
 * Author: Wojciech Chmiel
 *
 * A commercial license may be required depending on use,
 * see www.highcharts.com/license
 */function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(e._Highcharts,e._Highcharts.SeriesRegistry):"function"==typeof define&&define.amd?define("highcharts/indicators/chaikin",["highcharts/highcharts"],function(e){return t(e,e.SeriesRegistry)}):"object"==typeof exports?exports["highcharts/indicators/chaikin"]=t(e._Highcharts,e._Highcharts.SeriesRegistry):e.Highcharts=t(e.Highcharts,e.Highcharts.SeriesRegistry)}("u"<typeof window?this:window,function(e,t){return function(){"use strict";var r,o,n={512:function(e){e.exports=t},944:function(t){t.exports=e}},i={};function a(e){var t=i[e];if(void 0!==t)return t.exports;var r=i[e]={exports:{}};return n[e](r,r.exports,a),r.exports}a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,{a:t}),t},a.d=function(e,t){for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};var s={};a.d(s,{default:function(){return m}});var u=a(944),p=a.n(u),c=a(512),f=a.n(c),l=(r=function(e,t){return(r=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function o(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}),h=f().seriesTypes.sma,d=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l(t,e),t.populateAverage=function(e,t,r,o,n){var i=t[o][1],a=t[o][2],s=t[o][3],u=r[o],p=s===i&&s===a||i===a?0:(2*s-a-i)/(i-a)*u;return[e[o],p]},t.prototype.getValues=function(e,r){var o,n,i,a=r.period,s=e.xData,p=e.yData,c=r.volumeSeriesID,f=e.chart.get(c),l=null==f?void 0:f.getColumn("y"),h=p?p.length:0,d=[],y=[],g=[];if(!(s.length<=a)||!h||4===p[0].length){if(!f)return void(0,u.error)("Series "+c+" not found! Check `volumeSeriesID`.",!0,e.chart);for(n=a;n<h;n++)o=d.length,i=t.populateAverage(s,p,l,n,a),o>0&&(i[1]+=d[o-1][1]),d.push(i),y.push(i[0]),g.push(i[1]);return{values:d,xData:y,yData:g}}},t.defaultOptions=(0,u.merge)(h.defaultOptions,{params:{index:void 0,volumeSeriesID:"volume"}}),t}(h);(0,u.extend)(d.prototype,{nameComponents:!1,nameBase:"Accumulation/Distribution"}),f().registerSeriesType("ad",d);var y=(o=function(e,t){return(o=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),g=f().seriesTypes.ema,v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return y(t,e),t.prototype.getValues=function(t,r){var o,n,i=r.periods,a=r.period,s=[],p=[],c=[];if(2!==i.length||i[1]<=i[0])return void(0,u.error)('Error: "Chaikin requires two periods. Notice, first period should be lower than the second one."');var f=d.prototype.getValues.call(this,t,{volumeSeriesID:r.volumeSeriesID,period:a});if(f){var l=e.prototype.getValues.call(this,f,{period:i[0]}),h=e.prototype.getValues.call(this,f,{period:i[1]});if(l&&h){var y=i[1]-i[0];for(n=0;n<h.yData.length;n++)o=(0,u.correctFloat)(l.yData[n+y]-h.yData[n]),s.push([h.xData[n],o]),p.push(h.xData[n]),c.push(o);return{values:s,xData:p,yData:c}}}},t.defaultOptions=(0,u.merge)(g.defaultOptions,{params:{index:void 0,volumeSeriesID:"volume",period:9,periods:[3,10]}}),t}(g);(0,u.extend)(v.prototype,{nameBase:"Chaikin Osc",nameComponents:["periods"]}),f().registerSeriesType("chaikin",v);var m=p();return s.default}()});