예스스탁
예스스탁 답변
2022-06-14 16:52:06
안녕하세요
예스스탁입니다.
1
# 스윙하이와 스윙로우를 이용하여 중심선 계산
PH = swingHigh(1,data2(H),SwingPeriod,SwingPeriod,SwingPeriod*2+1);
PL = swingLow(1,data2(L),SwingPeriod,SwingPeriod,SwingPeriod*2+1);
위 내용은 함수에 사용하는 값만 data2처리가 되어 있습니다.
나머지 기간은 data2의 봉으로 체크하는 부분이 아니게 됩니다.
아래와 같이 참조데이타번호 함수안에 함수식이 들어가게 작성하시면 됩니다.
# 스윙하이와 스윙로우를 이용하여 중심선 계산
PH = data2(swingHigh(1,H,SwingPeriod,SwingPeriod,SwingPeriod*2+1));
PL = data2(swingLow(1,L,SwingPeriod,SwingPeriod,SwingPeriod*2+1));
즉 data2()안에 모든 계산식이나 조건식을 넣어서 작성하시면 됩니다.
2
input : SwingPeriod(2), AtrPeriod(10), ATrMult(3);
var : PH(0,Data2), PL(0,Data2), lastpp(0,Data2), center(0,Data2), alPHa(0,Data2), source(0,Data2), ATrV(0,Data2);
var : UpCh(0,Data2), DnCh(0,Data2), Trend(0,Data2), TuP(0,Data2), Tdown(0,Data2), TrailingSL(0,Data2);
# 스윙하이와 스윙로우를 이용하여 중심선 계산
PH = data2(swingHigh(1,H,SwingPeriod,SwingPeriod,SwingPeriod*2+1));
PL = data2(swingLow(1,L,SwingPeriod,SwingPeriod,SwingPeriod*2+1));
if PH <> -1 Then lastpp = PH;
if PL <> -1 Then lastpp = PL;
if PH <> -1 or PL <> -1 Then center = (center*2 + lastpp)/3;
# ATR계산(True Range를 RMA로 평균)
if CurrentBar > 0 Then
{
alPHa = 1 / AtrPeriod ;
source = data2(max(H-L, abs(H-C[1]), abs(L - C[1])));
ATrV = alPHa * source + (1 - alPHa) * ATrV[1];
}
# 상하단 채널과 추세에 따른 추세채널
UpCh = center - (ATrMult * ATrV);
DnCh = center + (ATrMult * ATrV);
Tup = data2(IFf(C[1] > TUp[1],max(UpCh, TUp[1]),UpCh));
Tdown = data2(IFf(C[1] < TDown[1],min(DnCh, TDown[1]),DnCh));
if data2(C > TDown[1]) Then Trend = 1;
if data2(C < TuP[1]) Then Trend = -1;
Trailingsl = IFf(Trend == 1, Tup, Tdown);
# 지표 출력
if data2(C > Trailingsl) Then { 매매수식 }
즐거운 하루되세요
> 마식 님이 쓴 글입니다.
> 제목 : 한번더 부탁드립니다.
> 죄송한데 한번만더 아래수식을 DATA2로 변경 가능할까요??
C,L 등 제가아는건 다 해봤는데 계속 오류가나네요
아래 변경한건데 한번 확인부탁드립니다.
input : SwingPeriod(2), AtrPeriod(10), ATrMult(3);
var : PH(0,Data2), PL(0,Data2), lastpp(0,Data2), center(0,Data2), alPHa(0,Data2), source(0,Data2), ATrV(0,Data2);
var : UpCh(0,Data2), DnCh(0,Data2), Trend(0,Data2), TuP(0,Data2), Tdown(0,Data2), TrailingSL(0,Data2);
# 스윙하이와 스윙로우를 이용하여 중심선 계산
PH = swingHigh(1,data2(H),SwingPeriod,SwingPeriod,SwingPeriod*2+1);
PL = swingLow(1,data2(L),SwingPeriod,SwingPeriod,SwingPeriod*2+1);
if PH <> -1 Then lastpp = PH;
if PL <> -1 Then lastpp = PL;
if PH <> -1 or PL <> -1 Then center = (center*2 + lastpp)/3;
# ATR계산(True Range를 RMA로 평균)
if CurrentBar > 0 Then {
alPHa = 1 / AtrPeriod ;
source = max(data2(H) - data2(L), abs(data2(H) - data2(C[1])), abs(data2(L) - data2(C[1])));
ATrV = alPHa * source + (1 - alPHa) * ATrV[1];
}
# 상하단 채널과 추세에 따른 추세채널
UpCh = center - (ATrMult * ATrV);
DnCh = center + (ATrMult * ATrV);
Tup = IFf(data2(C[1]) > TUp[1],max(UpCh, TUp[1]),UpCh );
Tdown = IFf(data2(C[1]) < TDown[1],min(DnCh, TDown[1]),DnCh );
if data2(C) > TDown[1] Then Trend = 1;
if data2(C)< TuP[1] Then Trend = -1;
Trailingsl = IFf(Trend == 1, Tup, Tdown);
# 지표 출력
if C > Trailingsl Then { 매매수식 }