UNPKG

highcharts

Version:
14 lines 2.97 kB
!/** * Highstock JS v13.0.1 (2026-08-17) * @module highcharts/indicators/psar * @requires highcharts * @requires highcharts/modules/stock * * Parabolic SAR Indicator for Highcharts Stock * * (c) 2010-2026 Highsoft AS * Author: Grzegorz Blachliński * * 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/psar",["highcharts/highcharts"],function(e){return t(e,e.SeriesRegistry)}):"object"==typeof exports?exports["highcharts/indicators/psar"]=t(e._Highcharts,e._Highcharts.SeriesRegistry):e.Highcharts=t(e.Highcharts,e.Highcharts.SeriesRegistry)}("u"<typeof window?this:window,(e,t)=>(()=>{"use strict";var r={512(e){e.exports=t},944(t){t.exports=e}};let a={};function i(e){let t=a[e];if(void 0!==t)return t.exports;let n=a[e]={exports:{}};return r[e](n,n.exports,i),n.exports}i.n=e=>{let t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{if(Array.isArray(t))for(var r=0;r<t.length;){var a=t[r++],n=t[r++];i.o(e,a)?0===n&&r++:0===n?Object.defineProperty(e,a,{enumerable:!0,value:t[r++]}):Object.defineProperty(e,a,{enumerable:!0,get:n})}else for(var a in t)i.o(t,a)&&!i.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let n={};i.d(n,{default:()=>d});var s=i(944),o=i.n(s),l=i(512),c=i.n(l);let{sma:h}=c().seriesTypes;function u(e,t){return parseFloat(e.toFixed(t))}class p extends h{constructor(){super(...arguments),this.nameComponents=void 0}getValues(e,t){let r=e.xData,a=e.yData,i=t.maxAccelerationFactor,n=t.increment,s=t.initialAccelerationFactor,o=t.decimals,l=t.index,c=[],h=[],p=[],d=t.initialAccelerationFactor,f,m=a[0][1],g,x,y,v=1,b,A,F,j,H=a[0][2],M,O,_,w;if(!(l>=a.length)){for(w=0;w<l;w++)m=Math.max(a[w][1],m),H=Math.min(a[w][2],u(H,o));for(f=a[w][1]>H?1:-1,g=m-H,x=(d=t.initialAccelerationFactor)*g,c.push([r[l],H]),h.push(r[l]),p.push(u(H,o)),w=l+1;w<a.length;w++)if(b=a[w-1][2],A=a[w-2][2],F=a[w-1][1],j=a[w-2][1],O=a[w][1],_=a[w][2],null!==A&&null!==j&&null!==b&&null!==F&&null!==O&&null!==_){var P,S,D,R,T,W,k,C,V,q,z,B,E,G,I,J,K,L,N,Q,U;T=f,W=v,k=H,C=x,V=A,q=b,z=F,B=j,E=m,H=T===W?1===T?k+C<Math.min(V,q)?k+C:Math.min(V,q):k+C>Math.max(B,z)?k+C:Math.max(B,z):E,P=f,S=m,M=1===P?O>S?O:S:_<S?_:S,D=v,R=H,G=y=1===D&&_>R||-1===D&&O>R?1:-1,I=f,J=M,K=m,L=d,N=n,Q=i,U=s,x=(d=G===I?1===G&&J>K||-1===G&&J<K?L===Q?Q:u(L+N,2):L:U)*(g=M-H),c.push([r[w],u(H,o)]),h.push(r[w]),p.push(u(H,o)),v=f,f=y,m=M}return{values:c,xData:h,yData:p}}}}p.defaultOptions=(0,s.merge)(h.defaultOptions,{lineWidth:0,marker:{enabled:!0},states:{hover:{lineWidthPlus:0}},params:{period:void 0,initialAccelerationFactor:.02,maxAccelerationFactor:.2,increment:.02,index:2,decimals:4}}),c().registerSeriesType("psar",p);let d=o();return n.default})());