커뮤니티

피라미딩 진입에 관련한 시스템식 문의에요

프로필 이미지
Gone
2011-11-29 11:15:41
478
글번호 45261
답변완료
4개의 채널을 만들고 채널을 1개 돌파시마다 1계약씩 총 4개약을 매수하는 시스템 식을 만들고 싶습니다. 근데 ㅠ.ㅠ 전혀 작동을 안합니다 전체적으로 살펴봐주세요 input : p1(1), mult1(0.5), mult2(0.8),mult3(1.0),mult4(1.2), atrmult(3), stopper(0.7); var : sumv(0), dailyvol(0), count(0), chup1(0), chdn1(0), chup2(0), chdn2(0), chup3(0), chdn3(0), chup4(0), chdn4(0); # 분봉에서 구현한 일봉의 고가-저가 변동폭의 N일 평균 sumv = 0; for count = 1 to p1 { sumv = sumv+(dayhigh(count)-daylow(count)); } dailyvol = sumv / p1; #시초가를 기준으로한 상단과 하단의 4개의 채널을 만듬 chup1 = dayopen + dailyvol*mult1; chdn1 = dayopen - dailyvol*mult1; chup2 = dayopen + dailyvol*mult2; chdn2 = dayopen - dailyvol*mult2; chup3 = dayopen + dailyvol*mult3; chdn3 = dayopen - dailyvol*mult3; chup4 = dayopen + dailyvol*mult4; chdn4 = dayopen - dailyvol*mult4; #진입식 if crossup(c,chup1) then buy(); if crossdown(c,chdn1) then sell(); if crossup(c,chup2) then buy(); if crossdown(c,chdn2) then sell(); if crossup(c,chup3) then buy(); if crossdown(c,chdn3) then sell(); if crossup(c,chup4) then buy(); if crossdown(c,chdn4) 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);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-11-29 15:07:27

안녕하세요 예스스탁입니다. 식 적용결과 정상적으로 신호가 발생합니다. 시스템 식을 차트에 적용하실 때 시스템 트레이딩 설정창의 피라미딩 탭에서 피라미딩을 다른진입신호만허용으로 설정하시고 차트에 적용하시면 됩니다. 첨부된 그림은 5분봉 차트에 적용한 것입니다. 아래지표식을 같이 적용했습니다. input : p1(1), mult1(0.5), mult2(0.8),mult3(1.0),mult4(1.2), atrmult(3), stopper(0.7); var : sumv(0), dailyvol(0), count(0), chup1(0), chdn1(0), chup2(0), chdn2(0), chup3(0), chdn3(0), chup4(0), chdn4(0); # 분봉에서 구현한 일봉의 고가-저가 변동폭의 N일 평균 sumv = 0; for count = 1 to p1 { sumv = sumv+(dayhigh(count)-daylow(count)); } dailyvol = sumv / p1; #시초가를 기준으로한 상단과 하단의 4개의 채널을 만듬 chup1 = dayopen + dailyvol*mult1; chdn1 = dayopen - dailyvol*mult1; chup2 = dayopen + dailyvol*mult2; chdn2 = dayopen - dailyvol*mult2; chup3 = dayopen + dailyvol*mult3; chdn3 = dayopen - dailyvol*mult3; chup4 = dayopen + dailyvol*mult4; chdn4 = dayopen - dailyvol*mult4; plot1(chup1); plot2(chup2); plot3(chup3); plot4(chup4); plot5(chdn1); plot6(chdn2); plot7(chdn3); plot8(chdn4); 즐거운 하루되세요 > Gone 님이 쓴 글입니다. > 제목 : 피라미딩 진입에 관련한 시스템식 문의에요 > 4개의 채널을 만들고 채널을 1개 돌파시마다 1계약씩 총 4개약을 매수하는 시스템 식을 만들고 싶습니다. 근데 ㅠ.ㅠ 전혀 작동을 안합니다 전체적으로 살펴봐주세요 input : p1(1), mult1(0.5), mult2(0.8),mult3(1.0),mult4(1.2), atrmult(3), stopper(0.7); var : sumv(0), dailyvol(0), count(0), chup1(0), chdn1(0), chup2(0), chdn2(0), chup3(0), chdn3(0), chup4(0), chdn4(0); # 분봉에서 구현한 일봉의 고가-저가 변동폭의 N일 평균 sumv = 0; for count = 1 to p1 { sumv = sumv+(dayhigh(count)-daylow(count)); } dailyvol = sumv / p1; #시초가를 기준으로한 상단과 하단의 4개의 채널을 만듬 chup1 = dayopen + dailyvol*mult1; chdn1 = dayopen - dailyvol*mult1; chup2 = dayopen + dailyvol*mult2; chdn2 = dayopen - dailyvol*mult2; chup3 = dayopen + dailyvol*mult3; chdn3 = dayopen - dailyvol*mult3; chup4 = dayopen + dailyvol*mult4; chdn4 = dayopen - dailyvol*mult4; #진입식 if crossup(c,chup1) then buy(); if crossdown(c,chdn1) then sell(); if crossup(c,chup2) then buy(); if crossdown(c,chdn2) then sell(); if crossup(c,chup3) then buy(); if crossdown(c,chdn3) then sell(); if crossup(c,chup4) then buy(); if crossdown(c,chdn4) 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);