커뮤니티
문의 (RB)
2014-02-14 04:55:17
159
글번호 72542
아래수식 갭보정용으로 해봤는데 잘 안되네요. 수정 부탁드립니다.
감사합니다.
VARS: sumGap(0, DATA1), Gap(0, DATA1), gHIGH(0, DATA1), gLOW(0, DATA1), gOPEN(0, DATA1), gCLOSE(0, DATA1);
//----------------------------------------------------------------------------------------------------------------------------------------------------------
if ( DATA1(Date <> Date[1]) ) then
Begin
Gap = ( DATA1(OPEN) - DATA1(CLOSE[1]) );
sumGap = sumGap + Gap;
End;
gHIGH = DATA1(HIGH) - sumGap;
gLOW = DATA1(LOW) - sumGap;
gOPEN = DATA1(OPEN) - sumGap;
gCLOSE = DATA1(CLOSE) - sumGap;
VARS: Price(0), BaseLength(10), Multiplier(10);
VARS: Counter(0);
ARRAYS: Length[8](0), SmoothingFactor[8](0), XMA[8](0), Color[8](0);
Price = CLOSE;
if (CurrentBar == 0) then
begin
Length[1] = BaseLength;
SmoothingFactor[1] = 2 / (Length[1] + 1);
XMA[1] = Price;
Color[1] = RGB(255, 255, 255);
for Counter = 1 to 7
begin
Length[ Counter + 1] = Length[Counter] + Multiplier;
SmoothingFactor[Counter + 1] = 2 / (Length[Counter + 1] + 1);
XMA[Counter + 1] = Price;
Color[Counter + 1] = RGB(0, int((255/8) * (Counter + 1)), 255);
end;
end
else
for Counter = 1 to 8
begin
XMA[Counter] = XMA[Counter][1] + SmoothingFactor[Counter] * (Price - XMA[Counter][1]);
end;
답변 1
예스스탁 예스스탁 답변
2014-02-14 11:24:12
안녕하세요
예스스탁입니다.
수식에 사용되는 값을
gHIGH
gLOW
gOPEN
gCLOSE
을 이용하셔야 합니다.
식내에 사용되는 값이 종가이므로
Price = gCLOSE;
로 변경해 사용하시면 됩니다.
VARS: sumGap(0, DATA1), Gap(0, DATA1), gHIGH(0, DATA1), gLOW(0, DATA1), gOPEN(0, DATA1), gCLOSE(0, DATA1);
//----------------------------------------------------------------------------------------------------------------------------------------------------------
if ( DATA1(Date <> Date[1]) ) then
Begin
Gap = ( DATA1(OPEN) - DATA1(CLOSE[1]) );
sumGap = sumGap + Gap;
End;
gHIGH = DATA1(HIGH) - sumGap;
gLOW = DATA1(LOW) - sumGap;
gOPEN = DATA1(OPEN) - sumGap;
gCLOSE = DATA1(CLOSE) - sumGap;
VARS: Price(0), BaseLength(10), Multiplier(10);
VARS: Counter(0);
ARRAYS: Length[8](0), SmoothingFactor[8](0), XMA[8](0), Color[8](0);
Price = gCLOSE;
if (CurrentBar == 0) then
begin
Length[1] = BaseLength;
SmoothingFactor[1] = 2 / (Length[1] + 1);
XMA[1] = Price;
Color[1] = RGB(255, 255, 255);
for Counter = 1 to 7
begin
Length[ Counter + 1] = Length[Counter] + Multiplier;
SmoothingFactor[Counter + 1] = 2 / (Length[Counter + 1] + 1);
XMA[Counter + 1] = Price;
Color[Counter + 1] = RGB(0, int((255/8) * (Counter + 1)), 255);
end;
end
else
for Counter = 1 to 8
begin
XMA[Counter] = XMA[Counter][1] + SmoothingFactor[Counter] * (Price - XMA[Counter][1]);
end;
즐거운 하루되세요
> TRF 님이 쓴 글입니다.
> 제목 : 문의 (RB)
> 아래수식 갭보정용으로 해봤는데 잘 안되네요. 수정 부탁드립니다.
감사합니다.
VARS: sumGap(0, DATA1), Gap(0, DATA1), gHIGH(0, DATA1), gLOW(0, DATA1), gOPEN(0, DATA1), gCLOSE(0, DATA1);
//----------------------------------------------------------------------------------------------------------------------------------------------------------
if ( DATA1(Date <> Date[1]) ) then
Begin
Gap = ( DATA1(OPEN) - DATA1(CLOSE[1]) );
sumGap = sumGap + Gap;
End;
gHIGH = DATA1(HIGH) - sumGap;
gLOW = DATA1(LOW) - sumGap;
gOPEN = DATA1(OPEN) - sumGap;
gCLOSE = DATA1(CLOSE) - sumGap;
VARS: Price(0), BaseLength(10), Multiplier(10);
VARS: Counter(0);
ARRAYS: Length[8](0), SmoothingFactor[8](0), XMA[8](0), Color[8](0);
Price = CLOSE;
if (CurrentBar == 0) then
begin
Length[1] = BaseLength;
SmoothingFactor[1] = 2 / (Length[1] + 1);
XMA[1] = Price;
Color[1] = RGB(255, 255, 255);
for Counter = 1 to 7
begin
Length[ Counter + 1] = Length[Counter] + Multiplier;
SmoothingFactor[Counter + 1] = 2 / (Length[Counter + 1] + 1);
XMA[Counter + 1] = Price;
Color[Counter + 1] = RGB(0, int((255/8) * (Counter + 1)), 255);
end;
end
else
for Counter = 1 to 8
begin
XMA[Counter] = XMA[Counter][1] + SmoothingFactor[Counter] * (Price - XMA[Counter][1]);
end;
다음글
이전글