커뮤니티

참조함수(265)

프로필 이미지
통큰베팅
2016-06-10 17:34:34
206
글번호 98949
답변완료
안녕하세요? 아래의 함수로 A종목으로 신호를 잡아서, B종목에 주문을 생성하여 매매를 하고 싶습니다. 함수 수정요청드립니다. input : short(8),long(20),sig(5); var : AA(0),BB(0),TSIv(0),signal(0); AA = ma(ma(C[1]-C, short), long); BB = ma(ma(abs(C[1] - C), short), long); TSIv = iff(BB == 0, 0, AA/BB * 100 * (-1)); signal = iff(BB == 0, 0, ma(AA/BB*100 * (-1),sig)); if crossup(TSIv,signal) Then buy("b",AtMarket); if crossdown(TSIv , signal) Then sell("s",AtMarket); SetStopLoss(1,PercentStop); SetStopProfittarget(2,PercentStop); SetStopInactivity(2,20,PercentStop);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-06-13 10:20:18

안녕하세요 예스스탁입니다. SetStopLoss(1,PercentStop); SetStopProfittarget(2,PercentStop); SetStopInactivity(2,20,PercentStop); 강제청산함수는 무조건 기본종목으로만 계산됩니다. 참조데이터로 변경하면 해당 내용을 봉완성시로만 변경해서만 가능합니다. 이용에 참고하시기 바랍니다. B종목차트에 A종목을 참조데이터로 추가후 아래식 적용하시면 됩니다. input : short(8),long(20),sig(5); var : AA(0,data2),BB(0,data2),TSIv(0,data2),signal(0,data2); var : BE(0,data2),BI(0,data2),SE(0,data2),SI(0,data2),HH(0,data2),LL(0,data2); AA = data2(ma(ma(C[1]-C, short), long)); BB = data2(ma(ma(abs(C[1] - C), short), long)); TSIv = data2(iff(BB == 0, 0, AA/BB * 100 * (-1))); signal = data2(iff(BB == 0, 0, ma(AA/BB*100 * (-1),sig))); if MarketPosition <= 0 and crossup(TSIv,signal) Then{ buy("b",AtMarket); BE = data2(NextBarOpen); BI = data2(index); HH = data2(NextBarOpen); } if crossdown(TSIv, signal) Then{ sell("s",AtMarket); SE = data2(NextBarOpen); SI = data2(index); LL = data2(NextBarOpen); } if MarketPosition == 1 Then{ if data2(H) > HH Then HH = data2(H); if data2(L <= BE*0.99) Then exitlong("bx1"); if data2(H >= BE*1.02) Then exitlong("bx2"); if data2(index) == BI+20 and HH < BE*1.2 Then exitlong("bx3"); } if MarketPosition == -1 Then{ if data2(L) < LL Then LL = data2(L); if data2(H >= SE*1.01) Then ExitShort("sx1"); if data2(L <= SE*0.99) Then ExitShort("sx2"); if data2(index) == SI+20 and LL > SE*0.8 Then ExitShort("sx3"); } 즐거운 하루되세요 > 통큰베팅 님이 쓴 글입니다. > 제목 : 참조함수(265) > 안녕하세요? 아래의 함수로 A종목으로 신호를 잡아서, B종목에 주문을 생성하여 매매를 하고 싶습니다. 함수 수정요청드립니다. input : short(8),long(20),sig(5); var : AA(0),BB(0),TSIv(0),signal(0); AA = ma(ma(C[1]-C, short), long); BB = ma(ma(abs(C[1] - C), short), long); TSIv = iff(BB == 0, 0, AA/BB * 100 * (-1)); signal = iff(BB == 0, 0, ma(AA/BB*100 * (-1),sig)); if crossup(TSIv,signal) Then buy("b",AtMarket); if crossdown(TSIv , signal) Then sell("s",AtMarket); SetStopLoss(1,PercentStop); SetStopProfittarget(2,PercentStop); SetStopInactivity(2,20,PercentStop);