커뮤니티

수식문의드립니다

프로필 이미지
feelkdn
2022-05-26 13:16:06
731
글번호 159293
답변완료

첨부 이미지

안녕하세요 1. 그림에서처럼 지수에서 고점지점이 하락하는 모습을 보이며 두 고점 사이의 최저점을 뚫고 지수가 하락할때 매도. 반대로 두 저점지점이 상승하는 모습을 보이며 두 저점 사이의 최고점을 뚫고 지수가 상승할때 매수하는 로직 2. 위와 같은 형태인데 2번의 5일 이평선이 10일 이평선을 크로스 하락된 지점이 하락하며 두 크로스된 지점 사이의 최저점을 뚫고 지수가 하락할때 매도 반대로 두 이평선의 크로스 상승된 지점이 상승하는 모습을 보이며 두 크로스된 사이의 최고점을 뚫고 지수가 상승할때 매수 예스랭기지를 아직 익히는중이라 이 두 로직 만들어주실수있을까요? 참고해서 사용하도록하겠습니다 감사합니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-05-26 15:14:39

안녕하세요 예스스탁입니다. 1 1번 내용은 고점과 저점의 판단기준이 필요합니다. 별도로 언급이 없으셔서 게시판에서 많이 사용하시는 지그재그식을 기준으로 작성해 드립니다. input:length(12); Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),Text1(0),process(0),T(0); Array:HH[10,2](0),LL[10,2](0); process = 0; If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then { If LL[1,1] > L Then process = -1; If HH[1,1] < H Then process = 1; } Else If Highest(H,length) == H and lastHiVal <> H Then process = 1; Else If Lowest(L,length) == L and lastLoVal <> L Then process = -1; If process == 1 Then { T = 1; lastHiVal = H; If HH[1,2] < LL[1,2] Then { For j = 10 DownTo 2 { HH[j,1] = HH[j-1,1]; HH[j,2] = HH[j-1,2]; } } If HH[1,2] < LL[1,2] or HH[1,1] < H Then { HH[1,1] = H; HH[1,2] = Index; sBar = Index - LL[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); Text_Delete(Text1); } if LL[1,1] > 0 Then { TL1 = TL_New(sDate[sBar],sTime[sBar],LL[1,1],sDate[eBar],sTime[eBar],HH[1,1]); Text1 = Text_New(sDate[eBar],sTime[eBar],HH[1,1],NewLine+NumToStr(HH[1,1],2)); Text_SetStyle(Text1, 2, 1); } Else { Text_Delete(text1); Text1 = Text_New(sDate[eBar],sTime[eBar],HH[1,1],NewLine+NumToStr(HH[1,1],2)); Text_SetStyle(Text1, 2, 1); } Text_SetStyle(Text1, 2, 1); } } If process == -1 Then { T = -1; lastLoVal = L; If LL[1,2] < HH[1,2] Then { For j = 10 DownTo 2 { LL[j,1] = LL[j-1,1]; LL[j,2] = LL[j-1,2]; } } If LL[1,2] < HH[1,2] or LL[1,1] > L Then { LL[1,1] = L; LL[1,2] = Index; sBar = Index - HH[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); Text_Delete(Text1); } if HH[1,1] > 0 Then { TL1 = TL_New(sDate[sBar],sTime[sBar],HH[1,1],sDate[eBar],sTime[eBar],LL[1,1]); Text1 = Text_New(sDate[eBar],sTime[eBar],LL[1,1],NumToStr(LL[1,1],2)); Text_SetStyle(Text1, 2, 0); } Else { Text_Delete(text1); Text1 = Text_New(sDate[eBar],sTime[eBar],LL[1,1],NumToStr(LL[1,1],2)); Text_SetStyle(Text1, 2, 0); } } } if T == 1 and C > HH[2,1] and LL[1,1] > LL[2,1] Then Buy(); if T == -1 and C < LL[2,1] and HH[1,1] < HH[2,1] Then Sell(); 2 input : P1(5),P2(10); var : T(0),hh(0),hh1(0),ll(0),ll1(0); var1 = ma(C,P1); Var2 = ma(C,P2); if CrossUp(var1,Var2) Then { T = 1; hh = h; hh1 = hh[1]; } if CrossDown(var1,Var2) Then { T = -1; ll = h; ll1 = ll[1]; } if T == 1 Then { if h > hh Then hh = h; if c > hh1[1] and ll > ll1 and ll1 > 0 then buy(); } if T == -1 Then { if l < ll Then ll = l; if c < ll1[1] and hh < hh1 and hh1 > 0 then Sell(); } 즐거운 하루되세요 > feelkdn 님이 쓴 글입니다. > 제목 : 수식문의드립니다 > 안녕하세요 1. 그림에서처럼 지수에서 고점지점이 하락하는 모습을 보이며 두 고점 사이의 최저점을 뚫고 지수가 하락할때 매도. 반대로 두 저점지점이 상승하는 모습을 보이며 두 저점 사이의 최고점을 뚫고 지수가 상승할때 매수하는 로직 2. 위와 같은 형태인데 2번의 5일 이평선이 10일 이평선을 크로스 하락된 지점이 하락하며 두 크로스된 지점 사이의 최저점을 뚫고 지수가 하락할때 매도 반대로 두 이평선의 크로스 상승된 지점이 상승하는 모습을 보이며 두 크로스된 사이의 최고점을 뚫고 지수가 상승할때 매수 예스랭기지를 아직 익히는중이라 이 두 로직 만들어주실수있을까요? 참고해서 사용하도록하겠습니다 감사합니다