커뮤니티

수식 수정부탁합니다

프로필 이미지
뽄때
2019-05-06 22:41:10
210
글번호 128430
답변완료
이평으로 매수한 것은 이평 데드크로스시 매도하고 싶고, 스톡으로 매수한건 스톡 데드크로스시 매도하고 싶은데, 스톡 매수후, 이평으로 추가 매수되었을 때.. 스톡매도 조건이 되면 2포지션 다 매도처리가 됩니다. 수식변경 부탁드립니다. 파라미딩은 이평이든, 스톡이든 조건이 되면 모두 매수할 수 있도록 다른 진입 신호만 허용으로 설정하였습니다 input : ntime1(60),P1(20),P2(60); input : sto1(25),sto2(6),sto3(6); Input : shortPeriod(20), longPeriod(60); var : cnt(0),sum1(0),sum2(0),mav1(0),mav2(0); var : S1(0),D1(0),TM(0),TF(0); var : stok(0),stod(0); Array : C1[100](0); stok = StochasticsK(sto1,sto2); stod = StochasticsD(sto1,sto2,sto3); sum1 = 0; sum2 = 0; for cnt = 0 to P2 { if cnt < P1 Then sum1 = sum1 + DayClose(cnt); if cnt < P2 Then sum2 = sum2 + DayClose(cnt); } mav1 = sum1/P1; mav2 = sum2/P2; value1 = ma(C, shortPeriod); value2 = ma(C, longPeriod); # 이평 매수 if mav1 > mav2 and crossup(value1,value2) Then buy("이평매수"); # 스톡 매수 if mav1 > mav2 and stok <30 and crossup(stok,stod) Then buy("스톡매수"); # 매도전략 if MarketPosition == 1 Then { if IsEntryName("이평매수") == true and CrossDown(value1,value2) Then ExitLong("이평매도"); } if MarketPosition == 1 Then { if IsEntryName("스톡매수") == true and stok >50 and CrossDown(stok,stod) Then ExitLong("스톡매도"); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-05-07 10:39:53

안녕하세요 예스스탁입니다. IsEntryName은 첫진입의 명칭을 지정합니다. 청산함수에 이름을 지정하시면 됩니다. input : ntime1(60),P1(20),P2(60); input : sto1(25),sto2(6),sto3(6); Input : shortPeriod(20), longPeriod(60); var : cnt(0),sum1(0),sum2(0),mav1(0),mav2(0); var : S1(0),D1(0),TM(0),TF(0); var : stok(0),stod(0); Array : C1[100](0); stok = StochasticsK(sto1,sto2); stod = StochasticsD(sto1,sto2,sto3); sum1 = 0; sum2 = 0; for cnt = 0 to P2 { if cnt < P1 Then sum1 = sum1 + DayClose(cnt); if cnt < P2 Then sum2 = sum2 + DayClose(cnt); } mav1 = sum1/P1; mav2 = sum2/P2; value1 = ma(C, shortPeriod); value2 = ma(C, longPeriod); # 이평 매수 if mav1 > mav2 and crossup(value1,value2) Then buy("이평매수"); # 스톡 매수 if mav1 > mav2 and stok <30 and crossup(stok,stod) Then buy("스톡매수"); # 매도전략 if MarketPosition == 1 Then { if CrossDown(value1,value2) Then ExitLong("이평매도",OnClose,def,"이평매수"); if stok >50 and CrossDown(stok,stod) Then ExitLong("스톡매도",OnClose,def,"스톡매수"); } 즐거운 하루되세요 > 뽄때 님이 쓴 글입니다. > 제목 : 수식 수정부탁합니다 > 이평으로 매수한 것은 이평 데드크로스시 매도하고 싶고, 스톡으로 매수한건 스톡 데드크로스시 매도하고 싶은데, 스톡 매수후, 이평으로 추가 매수되었을 때.. 스톡매도 조건이 되면 2포지션 다 매도처리가 됩니다. 수식변경 부탁드립니다. 파라미딩은 이평이든, 스톡이든 조건이 되면 모두 매수할 수 있도록 다른 진입 신호만 허용으로 설정하였습니다 input : ntime1(60),P1(20),P2(60); input : sto1(25),sto2(6),sto3(6); Input : shortPeriod(20), longPeriod(60); var : cnt(0),sum1(0),sum2(0),mav1(0),mav2(0); var : S1(0),D1(0),TM(0),TF(0); var : stok(0),stod(0); Array : C1[100](0); stok = StochasticsK(sto1,sto2); stod = StochasticsD(sto1,sto2,sto3); sum1 = 0; sum2 = 0; for cnt = 0 to P2 { if cnt < P1 Then sum1 = sum1 + DayClose(cnt); if cnt < P2 Then sum2 = sum2 + DayClose(cnt); } mav1 = sum1/P1; mav2 = sum2/P2; value1 = ma(C, shortPeriod); value2 = ma(C, longPeriod); # 이평 매수 if mav1 > mav2 and crossup(value1,value2) Then buy("이평매수"); # 스톡 매수 if mav1 > mav2 and stok <30 and crossup(stok,stod) Then buy("스톡매수"); # 매도전략 if MarketPosition == 1 Then { if IsEntryName("이평매수") == true and CrossDown(value1,value2) Then ExitLong("이평매도"); } if MarketPosition == 1 Then { if IsEntryName("스톡매수") == true and stok >50 and CrossDown(stok,stod) Then ExitLong("스톡매도"); }