커뮤니티

수식의 변환

프로필 이미지
취생몽사
2008-12-01 15:48:47
928
글번호 18451
답변완료
TRADE STATION 과 YES TRADER의 선형회귀선의 출력이 미묘하게 조금 다르다는 걸 알게 되었습니다. 그러니까 INPUT에 같은 값을 넣어도, 완전히 같은 값이 나오지는 않는다는 겁니다. 이건 무슨 까닭인 지 설명을 좀 부탁드려도 될까요? 아래는 TRADE STATION의 선형회귀선(LinearRegValue)의 수식입니다. 덧붙여, 혹시 이걸 YES TRADER에서 사용할 수 있도록 고쳐 주실 수 있으신지요. Inputs: Price(NumericSeries), Len(NumericSimple), TargetB(NumericSimple); Variables: X(0), Num1(0), Num2(0), SumBars(0), SumSqrBars(0), SumY(0), Sum1(0), Sum2(0), Slope(0), Intercept(0); If Len = 0 Then LinearRegValue = 0; SumBars = 0; SumSqrBars = 0; SumY = 0; Sum1 = 0; Sum2 = 0; SumY = Summation(Price, Len); SumBars = Len * (Len - 1) * .5; SumSqrBars = (Len - 1) * Len * (2 * Len - 1) / 6; For X = 0 To Len - 1 Begin Sum1 = Sum1 + X * Price[X]; End; Sum2 = SumBars * SumY; Num1 = Len * Sum1 - Sum2; Num2 = SumBars * SumBars - Len * SumSqrBars; If Num2 <> 0 Then Slope = Num1 / Num2 Else Slope = 0; Intercept = (SumY - Slope * SumBars) / Len; LinearRegValue = Intercept + Slope * (Len - 1 + CurrentBar - BarNumber - TargetB);
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-12-01 16:02:14

안녕하세요 예스스탁입니다. 우선 해당내용을 YT로 변경한 사용자 함수를 올려드립니다. functions폴더에 다운하시기 바랍니다. 미묘한 차이가 어디서 나오는지 정확히 확인을 못했습니다. 함수안에 barnumber등의 차이에서 오지 않을까 사료됩니다. 즐거운 하루되세요 > 취생몽사 님이 쓴 글입니다. > 제목 : 수식의 변환 > TRADE STATION 과 YES TRADER의 선형회귀선의 출력이 미묘하게 조금 다르다는 걸 알게 되었습니다. 그러니까 INPUT에 같은 값을 넣어도, 완전히 같은 값이 나오지는 않는다는 겁니다. 이건 무슨 까닭인 지 설명을 좀 부탁드려도 될까요? 아래는 TRADE STATION의 선형회귀선(LinearRegValue)의 수식입니다. 덧붙여, 혹시 이걸 YES TRADER에서 사용할 수 있도록 고쳐 주실 수 있으신지요. Inputs: Price(NumericSeries), Len(NumericSimple), TargetB(NumericSimple); Variables: X(0), Num1(0), Num2(0), SumBars(0), SumSqrBars(0), SumY(0), Sum1(0), Sum2(0), Slope(0), Intercept(0); If Len = 0 Then LinearRegValue = 0; SumBars = 0; SumSqrBars = 0; SumY = 0; Sum1 = 0; Sum2 = 0; SumY = Summation(Price, Len); SumBars = Len * (Len - 1) * .5; SumSqrBars = (Len - 1) * Len * (2 * Len - 1) / 6; For X = 0 To Len - 1 Begin Sum1 = Sum1 + X * Price[X]; End; Sum2 = SumBars * SumY; Num1 = Len * Sum1 - Sum2; Num2 = SumBars * SumBars - Len * SumSqrBars; If Num2 <> 0 Then Slope = Num1 / Num2 Else Slope = 0; Intercept = (SumY - Slope * SumBars) / Len; LinearRegValue = Intercept + Slope * (Len - 1 + CurrentBar - BarNumber - TargetB);