커뮤니티

문의드립니다

프로필 이미지
사과쥬스
2021-02-04 12:29:07
881
글번호 146100
답변완료
주식 시스템에 적용하려고 합니다. 아래 수식을 당일 매수매도 1회만 가능하도록 수정하려고 합니다. input : by(0), ct(0), dh(3), hh(3); var : AA(0),BB(0),DD(0),CC(0), sum1(0),sum2(0);; var : cnt(0),count(0); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if Highest(H[1],1170) < Highest(H,1170) Then AA = (highest(H,1170)+ lowest(L,1170))/2; BB = Highest(H,1170); CC = AA-(BB-AA); var1 = NthHighestBar(1,H,1170); DD = lowest(L,var1); value1 = ((BB-CC)*-(0.001*by))+BB; Value2 = ct; Value3 = CC; value4 = (BB-CC)*-0.236+BB; value5 = (BB-CC)*-0.382+BB; value6 = (BB-CC)*-0.618+BB; value7 = (BB-CC)*-0.75+BB; value8 = (BB-CC)*-0.875+BB; Value9 = (AA-Value6)+DD; Value10 = 2*(AA-Value6)+DD; var11 = DayVolume(2); var12 = DayVolume(1); if count < 1 and (Var12 >= var11 * 2) and DayHigh(0) <= DayHigh(1) and ( dh == 1) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if count < 1 and (Var12 >= var11 * 2) and DayHigh(0) > DayHigh(1) and ( dh == 0) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if count < 1 and (Var12 >= var11 * 2) and (hh == 3) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if crossup(h,Value10) or CrossDown(c,Value2) Then exitlong(); 감사합니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-02-04 15:14:19

안녕하세요 예스스탁입니다. 현재 올려주신 수식에 모든매수진입이 당일 1회로 지정되어 있습니다. 청산은 진입신호가 있어야 발동하므로 진입과 청산 합쳐서는 2회까지 발생합니다. 진입과 청산 합쳐서 1회만 나오고자 하시면 아래와 같이 변경하시면 됩니다. input : by(0), ct(0), dh(3), hh(3); var : AA(0),BB(0),DD(0),CC(0), sum1(0),sum2(0);; var : cnt(0),count(0); if Bdate != Bdate[1] Then count = 0; if CurrentContracts > CurrentContracts[1] or CurrentContracts < CurrentContracts[1] Then count = count+1; if Highest(H[1],1170) < Highest(H,1170) Then AA = (highest(H,1170)+ lowest(L,1170))/2; BB = Highest(H,1170); CC = AA-(BB-AA); var1 = NthHighestBar(1,H,1170); DD = lowest(L,var1); value1 = ((BB-CC)*-(0.001*by))+BB; Value2 = ct; Value3 = CC; value4 = (BB-CC)*-0.236+BB; value5 = (BB-CC)*-0.382+BB; value6 = (BB-CC)*-0.618+BB; value7 = (BB-CC)*-0.75+BB; value8 = (BB-CC)*-0.875+BB; Value9 = (AA-Value6)+DD; Value10 = 2*(AA-Value6)+DD; var11 = DayVolume(2); var12 = DayVolume(1); if count < 1 and (Var12 >= var11 * 2) and DayHigh(0) <= DayHigh(1) and ( dh == 1) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if count < 1 and (Var12 >= var11 * 2) and DayHigh(0) > DayHigh(1) and ( dh == 0) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if count < 1 and (Var12 >= var11 * 2) and (hh == 3) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if count < 1 and (crossup(h,Value10) or CrossDown(c,Value2)) Then exitlong(); 즐거운 하루되세요 > 사과쥬스 님이 쓴 글입니다. > 제목 : 문의드립니다 > 주식 시스템에 적용하려고 합니다. 아래 수식을 당일 매수매도 1회만 가능하도록 수정하려고 합니다. input : by(0), ct(0), dh(3), hh(3); var : AA(0),BB(0),DD(0),CC(0), sum1(0),sum2(0);; var : cnt(0),count(0); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if Highest(H[1],1170) < Highest(H,1170) Then AA = (highest(H,1170)+ lowest(L,1170))/2; BB = Highest(H,1170); CC = AA-(BB-AA); var1 = NthHighestBar(1,H,1170); DD = lowest(L,var1); value1 = ((BB-CC)*-(0.001*by))+BB; Value2 = ct; Value3 = CC; value4 = (BB-CC)*-0.236+BB; value5 = (BB-CC)*-0.382+BB; value6 = (BB-CC)*-0.618+BB; value7 = (BB-CC)*-0.75+BB; value8 = (BB-CC)*-0.875+BB; Value9 = (AA-Value6)+DD; Value10 = 2*(AA-Value6)+DD; var11 = DayVolume(2); var12 = DayVolume(1); if count < 1 and (Var12 >= var11 * 2) and DayHigh(0) <= DayHigh(1) and ( dh == 1) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if count < 1 and (Var12 >= var11 * 2) and DayHigh(0) > DayHigh(1) and ( dh == 0) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if count < 1 and (Var12 >= var11 * 2) and (hh == 3) Then{ if (Var12 >= var11 * 2)and (c <= value1) Then buy(); } if crossup(h,Value10) or CrossDown(c,Value2) Then exitlong(); 감사합니다