| Q&A 게시판 | HOME > Q&A 게시판 |
작성자 :
예스스탁
작성일 : 2021-06-11 17:13:13
조회수 : 520
Re:변동성 돌파전략을 적용하고자 하는데 어느 부분이 문제인지 수정을 부탁 드립니다.
안녕하세요?
수식 검증 오류 부분은
맨 첫줄에 '/#변동성돌파전략/' 으로 작성하셨는데, '#변동성돌파전략/' 으로 수정하시면 됩니다.
그리고 식 내용 중에 당일청산(setstopendofday) 가 1500 으로 지정되어 있는데,
이 내용이 포함되어 있으면 15시~24시 까지는 진입신호가 발생되지 않습니다.
올려주신 식은 주식처럼 장이 오후에 끝나는 경우에 사용하는 것으로
24시간 거래되는 암호화폐 시장에서는 setstopendofday는 사용하지 않아야 될 것으로 보입니다.
감사합니다.
>> 풀잎향기 님이 쓴 글입니다.
>> 제목 : 변동성 돌파전략을 적용하고자 하는데 어느 부분이 문제인지 수정을 부탁 드립니다.다른 사이트에 있는 수식을 사용하고자 하는데, 시스템매매에 적용해보니 수식이 오류가 나오고 있습니다.
무엇이 문제인지 수정을 부탁드립니다.
/#변동성돌파전략/
input : P1(5), Mult(0.2), AtrMult(2.5), stopPer(0.7);var : sumV(0), DailyVol(0), count(0), ChUp(0), ChDn(0);
# 분봉에서 구현한 일봉의 고가-저가 변동폭의 N일 평균
sumV = 0;
for count = 1 to P1 {sumV = sumV+(DayHigh(count)-DayLow(count));}
DailyVol = sumV / P1;
# 시초가를 기준으로한 상단과 하단의 두개의 채널을 만듬
ChUp = dayOpen + DailyVol*Mult;
ChDn = dayOpen - DailyVol*Mult;
# 진입식
if CrossUp(C, ChDn) and bids > asks Then buy();
if Crossdown(C, ChUp) and bids < asks Then sell();
# 청산식
If MarketPosition == 1 Then exitlong("EL", atstop, Highest(H,BarsSinceEntry+1)-ATR(30)*ATRMult);If MarketPosition == -1 Then exitlong("ES", atstop, Lowest(L,BarsSinceEntry+1)+ATR(30)*ATRMult);
# 강제청산 및 당일청산
SetStopLoss(StopPer);
SetStopEndofday(1500);
by GAMBLER
수식 검증 오류 부분은
맨 첫줄에 '/#변동성돌파전략/' 으로 작성하셨는데, '#변동성돌파전략/' 으로 수정하시면 됩니다.
그리고 식 내용 중에 당일청산(setstopendofday) 가 1500 으로 지정되어 있는데,
이 내용이 포함되어 있으면 15시~24시 까지는 진입신호가 발생되지 않습니다.
올려주신 식은 주식처럼 장이 오후에 끝나는 경우에 사용하는 것으로
24시간 거래되는 암호화폐 시장에서는 setstopendofday는 사용하지 않아야 될 것으로 보입니다.
감사합니다.
>> 풀잎향기 님이 쓴 글입니다.
>> 제목 : 변동성 돌파전략을 적용하고자 하는데 어느 부분이 문제인지 수정을 부탁 드립니다.다른 사이트에 있는 수식을 사용하고자 하는데, 시스템매매에 적용해보니 수식이 오류가 나오고 있습니다.
무엇이 문제인지 수정을 부탁드립니다.
/#변동성돌파전략/
input : P1(5), Mult(0.2), AtrMult(2.5), stopPer(0.7);var : sumV(0), DailyVol(0), count(0), ChUp(0), ChDn(0);
# 분봉에서 구현한 일봉의 고가-저가 변동폭의 N일 평균
sumV = 0;
for count = 1 to P1 {sumV = sumV+(DayHigh(count)-DayLow(count));}
DailyVol = sumV / P1;
# 시초가를 기준으로한 상단과 하단의 두개의 채널을 만듬
ChUp = dayOpen + DailyVol*Mult;
ChDn = dayOpen - DailyVol*Mult;
# 진입식
if CrossUp(C, ChDn) and bids > asks Then buy();
if Crossdown(C, ChUp) and bids < asks Then sell();
# 청산식
If MarketPosition == 1 Then exitlong("EL", atstop, Highest(H,BarsSinceEntry+1)-ATR(30)*ATRMult);If MarketPosition == -1 Then exitlong("ES", atstop, Lowest(L,BarsSinceEntry+1)+ATR(30)*ATRMult);
# 강제청산 및 당일청산
SetStopLoss(StopPer);
SetStopEndofday(1500);
by GAMBLER
