Search
📝

Heikin-Ashi(헤이킨 아시) 파라볼릭 지표

input : 가속도(0.02),최대가속도(0.2); var : maxMin(nan),acceleration(nan),Trend(0); var : FirstTrendBar(false),Para(nan); var : haClose(0),haOpen(0),haHigh(0),haLow(0); #Heiken Ashi 시고저종 if index == 0 then { haClose = (O+H+L+C)/4; haOpen = open; haHigh = MaxList( high, haOpen, haClose); haLow = MinList( low, haOpen,haClose); } else { haClose = (O+H+L+C)/4; haOpen = (haOpen [1] + haClose [1])/2 ; haHigh = MaxList(High, haOpen, haClose) ; haLow = MinList(Low, haOpen, haClose) ; } // 매봉 False로 시작하고 // 아래 로직에 의해 추세가 전환되는 첫봉이면 true로 변경 FirstTrendBar = False; // 2번째봉)에서 초기화 if Index == 1 Then { if HaClose > HaClose[1] Then // 상승 추세 시작 { Trend = 1; //상승추세란 의미로 1 maxMin = Hahigh; // 극단값으로 high로 저장 Para = Halow[1]; // 초기 SAR를 전봉 저가로 설정 } else // 하락 추세 시작 { Trend = -1; //하락추세란 의미로 -1 maxMin = Halow; // 극단값으로 low로 저장 Para = Hahigh[1]; // 초기 SAR를 전봉 고가로 설정 } FirstTrendBar = true; //추세전환 acceleration = 가속도; // 가속도 초기화 } //파라볼릭 = 직전파라볼릭값 + AF * (극단 - 직전파라볼릭값) Para = Para + acceleration * (maxMin - Para); //상승추세 if Trend == 1 Then { //저가가 파라볼릭보다 작으면 if Para > Halow then { //하락전환 Trend = -1; //하락전환 첫봉발생 FirstTrendBar = true; //파라볼릭값은 고가와 극단값 중 큰값 Para = max(Hahigh, maxMin); //극단값으로 저가로 변경 저장 maxMin = Halow; //가속도 초기화 acceleration = 가속도; } } else //하락추세 { //고가가 파라볼릭보다 크면 if Para < Hahigh Then { //상승전환 Trend = 1; //상승전환 첫봉발생 FirstTrendBar = true; //파라볼릭은 저가와 극단값 중 작은값 Para = min(Halow, maxMin); //극단값을 고가로 변경 저장 maxMin = Hahigh; //가속도 초기화 acceleration = 가속도; } } //추세전환 첫봉이 아니면 if FirstTrendBar == False Then { //상승추세 if Trend == 1 Then { ///고가가 극단값보다 크면 if Hahigh > maxMin Then { //극단값으로 고가저장 maxMin = Hahigh; //가속도값을 가속도만큼 증가하는데 최대가속도까지만 증가 acceleration = min(acceleration + 가속도, 최대가속도); } } else //하락추세 { ///저가가 극단값보다 작으면 if Halow < maxMin Then { //극단값으로 저가 저장 maxMin = Halow; //가속도값을 가속도만큼 증가하는데 최대가속도까지만 증가 acceleration = min(acceleration + 가속도, 최대가속도); } } } //상승추세 if Trend == 1 Then { // 상승추세이면 파라볼릭은 최근 1~2봉의 저가보다 작거나 같아야 함 Para = min(Para, Halow[1]); if Index > 1 Then Para = min(Para, Halow[2]); } else { // 하락추세이면 파라볼릭은 최근 1~2봉의 고가보다 크거나 같아야 함 Para = max(Para, Hahigh[1]); if Index > 1 Then Para = max(Para, Hahigh[2]); } //지표속상창 차트표시탭에서 그래프 종류를 점그래프로 설정 plot1(para,"파리볼릭",IFf(C>Para,Red,Blue));
JavaScript
복사
[설명] 봉가격이 아닌 Heikin-Ashi 가격으로 계산한 파라볼릭입니다. 파라볼릭 지표(Parabolic SAR, Stop And Reverse)는 추세 추종형 보조지표로, 가격이 오르거나 내릴 때 추세의 지속과 반전 지점을 알려주는 데 사용됩니다. [파라볼릭 계산]
현재 파라볼릭 = 직전파라볼릭 + 가속도X(극단값-직전파라볼릭)