커뮤니티

문의드립니다.

프로필 이미지
매일대박
2023-12-04 17:04:44
978
글번호 174570
답변완료
안녕하십니까? 날씨가 정말 추운데 이렇게 도움을 받을 곳이 있어서 따뜻한 느낌이 듭니다. 항상 건강 조심하시기 바랍니다. 질문) 아래 수식으로 돌파 자동매매를 해보고 있는데요 프로그램을 끄고 다시 켜면 돌파가 아니라 이미 돌파된 것들도 매수가 되더라고요 아래 수식에다가 이미 돌파된 것이 아니라 딱 crossup될 때만 매수가 될수 있게 구현 가능할까요? input : length(21),hh(8),mult(2),k(2); var : src(0),n(0),tx(0),sume(0),i(0),j(0),y2(0),sum(0),sumw(0),w(0),mae(0),A(0),A1(0),A2(0),A3(0); src = Close; n = barindex; sume = 0; for i = 0 to length-1 { sum = 0; sumw = 0; for j = 0 to length-1 { w = exp(-(pow(i-j,2)/(hh*hh*2))); sum = sum+src[j]*w; sumw = sumw+w; } y2 = sum/sumw; sume = sume+abs(src[i] - y2); } mae = sume/length*mult; A=y2; A1=y2+mae; A2=y2-mae; input : keyvalue(1),atrperiod(10); var : xATR(0),nLoss(0),xATRTrailingStop(0),pos(0),xcolor(0); src = close ; xATR = atr(atrperiod); nLoss = keyvalue * xATR; xATRTrailingStop = iff(src > xATRTrailingStop[1] and src[1] > xATRTrailingStop[1], max(xATRTrailingStop[1], src - nLoss), iff(src < xATRTrailingStop[1] and src[1] < xATRTrailingStop[1], min(xATRTrailingStop[1], src + nLoss), iff(src > xATRTrailingStop[1], src - nLoss, src + nLoss))); pos = iff(src[1] < xATRTrailingStop[1] and src > xATRTrailingStop[1], 1, iff(src[1] > xATRTrailingStop[1] and src < xATRTrailingStop[1], -1,pos[1])); input : 기간(5); var : Tema1(0),Tema2(0),Tema3(0),TemaM(0); Tema1= EmA(close, 기간); Tema2= EmA(Tema1, 기간); Tema3= EmA(Tema2, 기간); TemaM= 3 * Tema1 -3 * Tema2 + Tema3; IF pos==1 && CROSSUP(TemaM,A1) && CROSSUP(xATRTrailingStop,A1) && C>O TheN Find(1); 주봉매매를 해보더라도 이미 돌파된 것들이 매수되더라고요 ^^ 항상 감사합니다.
검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-12-05 11:06:04

안녕하세요 예스스탁입니다. 문의하신 내용은 가능하지 않습니다. 랭귀지는 봉단위로만 가격이나 조건판단이 가능합니다. 현재 돌파가 바로 발생한 것을 파악하려면 하나의 봉 내부에서 직전시세와 현재시세의 상태로 판단해야 하는데 랭귀지에서 봉 내우의 모든 시세를 체크할 수는 없어 해당 내용으로 판단이 가능하지 않습니다. 도움을 드리지 못해 죄송합니다. 즐거운 하루되세요 > 매일대박 님이 쓴 글입니다. > 제목 : 문의드립니다. > 안녕하십니까? 날씨가 정말 추운데 이렇게 도움을 받을 곳이 있어서 따뜻한 느낌이 듭니다. 항상 건강 조심하시기 바랍니다. 질문) 아래 수식으로 돌파 자동매매를 해보고 있는데요 프로그램을 끄고 다시 켜면 돌파가 아니라 이미 돌파된 것들도 매수가 되더라고요 아래 수식에다가 이미 돌파된 것이 아니라 딱 crossup될 때만 매수가 될수 있게 구현 가능할까요? input : length(21),hh(8),mult(2),k(2); var : src(0),n(0),tx(0),sume(0),i(0),j(0),y2(0),sum(0),sumw(0),w(0),mae(0),A(0),A1(0),A2(0),A3(0); src = Close; n = barindex; sume = 0; for i = 0 to length-1 { sum = 0; sumw = 0; for j = 0 to length-1 { w = exp(-(pow(i-j,2)/(hh*hh*2))); sum = sum+src[j]*w; sumw = sumw+w; } y2 = sum/sumw; sume = sume+abs(src[i] - y2); } mae = sume/length*mult; A=y2; A1=y2+mae; A2=y2-mae; input : keyvalue(1),atrperiod(10); var : xATR(0),nLoss(0),xATRTrailingStop(0),pos(0),xcolor(0); src = close ; xATR = atr(atrperiod); nLoss = keyvalue * xATR; xATRTrailingStop = iff(src > xATRTrailingStop[1] and src[1] > xATRTrailingStop[1], max(xATRTrailingStop[1], src - nLoss), iff(src < xATRTrailingStop[1] and src[1] < xATRTrailingStop[1], min(xATRTrailingStop[1], src + nLoss), iff(src > xATRTrailingStop[1], src - nLoss, src + nLoss))); pos = iff(src[1] < xATRTrailingStop[1] and src > xATRTrailingStop[1], 1, iff(src[1] > xATRTrailingStop[1] and src < xATRTrailingStop[1], -1,pos[1])); input : 기간(5); var : Tema1(0),Tema2(0),Tema3(0),TemaM(0); Tema1= EmA(close, 기간); Tema2= EmA(Tema1, 기간); Tema3= EmA(Tema2, 기간); TemaM= 3 * Tema1 -3 * Tema2 + Tema3; IF pos==1 && CROSSUP(TemaM,A1) && CROSSUP(xATRTrailingStop,A1) && C>O TheN Find(1); 주봉매매를 해보더라도 이미 돌파된 것들이 매수되더라고요 ^^ 항상 감사합니다.