커뮤니티

수식 부탁드려요~

프로필 이미지
gaintoga
2015-07-30 10:26:31
90
글번호 89016
답변완료
늘 도움 주셔서 감사드리고 있습니다. 아래수식에서 진입 후 익절청산이 되면 그자리에서 바로 또 신호가 나오더라고요. 그래서 1) 익절청산자리에서 10틱 이하에서 +2) 10분 이후 재진입 하도록 바꿔주세요. 좋은 하루 되세요~ input : LSS1(10), LSS2(60), LFF1(10), LFF2(59), FMM1(5), FMM2(20), OMMD1(10), OMMD2(59), LossCutL(20), StopCutL(20); var : Ordata1(0,data6),LBB1(0,data6),LBB2(0,data6); var : Eprice(0,data6),O2(0,data1); Ordata1 = (data4(c)+data5(c)); LBB1 = data6(ma(c,12)); LBB2 = data6(ma(c,20)); O2 = data6(O); if LBB1 > LBB2 and data2(ma(c,LSS1)) > data2(ma(c,LSS2)) and data6(crossup(ma(Ordata1,LFF1),ma(Ordata1,LFF2))) then buy("매수1",AtMarket); if crossup(LBB1,LBB2) then buy("매수2",AtMarket); if LBB1 < LBB2 and data2(ma(c,LSS1)) < data2(ma(c,LSS2)) and data6(crossdown(ma(Ordata1,LFF1),ma(Ordata1,LFF2))) then sell("매도1",AtMarket); if crossdown(LBB1,LBB2) then sell("매도2",AtMarket); if data2(ma(c,FMM1)) < data2(ma(c,FMM2)) and data6(crossdown(ma(Ordata1,OMMD1),ma(Ordata1,OMMD2))) then{ ExitLong("매수청산",AtMarket); } if data2(ma(c,FMM1)) > data2(ma(c,FMM2)) and data6(crossup(ma(Ordata1,OMMD1),ma(Ordata1,OMMD2))) then{ ExitLong("매도청산",AtMarket); } If MarketPosition == 1 Then { if data6(L) <= O2[BarsSinceEntry]-(LosscutL*data6(PriceScale)) Then ExitLong("콜손절"); if data6(H) >= O2[BarsSinceEntry]+(StopCutL*data6(PriceScale)) Then Exitlong("콜익절"); } If MarketPosition == -1 Then { if data6(L) >= O2[BarsSinceEntry]+(LosscutS*data6(PriceScale)) Then ExitLong("풋손절"); if data6(H) <= O2[BarsSinceEntry]-(StopCutS*data6(PriceScale)) Then Exitlong("풋익절"); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-08-03 11:23:39

안녕하세요 예스스탁입니다. input : LSS1(10), LSS2(60), LFF1(10), LFF2(59), FMM1(5), FMM2(20), OMMD1(10), OMMD2(59), LossCutL(20), StopCutL(20), LossCutS(20), StopCutS(20); var : Ordata1(0,data6),LBB1(0,data6),LBB2(0,data6); var : Eprice(0,data6),O2(0,data1); var : BXcond(false,data1),SXcond(false,data1); Ordata1 = (data4(c)+data5(c)); LBB1 = data6(ma(c,12)); LBB2 = data6(ma(c,20)); O2 = data6(O); BXcond = MarketPosition(1) == 1 and ExitDate(1) == sdate and IsExitName("콜손절",1); SXcond = MarketPosition(1) == -1 and ExitDate(1) == sdate and IsExitName("풋손절",1); if LBB1 > LBB2 and data2(ma(c,LSS1)) > data2(ma(c,LSS2)) and data6(crossup(ma(Ordata1,LFF1),ma(Ordata1,LFF2))) then{ if BXcond == false or MarketPosition == -1 Then buy("매수1",AtMarket); if MarketPosition == 0 and BXcond == true and TimeToMinutes(stime) >= TimeToMinutes(ExitTime(1))+10 and C <= ExitPrice(1)-PriceScale*10 Then buy("매수11",AtMarket); } if crossup(LBB1,LBB2) then{ if BXcond == false or MarketPosition == -1 Then buy("매수2",AtMarket); if MarketPosition == 0 and BXcond == true and TimeToMinutes(stime) >= TimeToMinutes(ExitTime(1))+10 and C <= ExitPrice(1)-PriceScale*10 Then buy("매수21",AtMarket); } if LBB1 < LBB2 and data2(ma(c,LSS1)) < data2(ma(c,LSS2)) and data6(crossdown(ma(Ordata1,LFF1),ma(Ordata1,LFF2))) then{ if SXcond == false or MarketPosition == 1 Then sell("매도1",AtMarket); if MarketPosition == 0 and SXcond == true and TimeToMinutes(stime) >= TimeToMinutes(ExitTime(1))+10 and C >= ExitPrice(1)+PriceScale*10 Then sell("매도11",AtMarket); } if crossdown(LBB1,LBB2) then{ if SXcond == false or MarketPosition == 1 Then sell("매도2",AtMarket); if MarketPosition == 0 and SXcond == true and TimeToMinutes(stime) >= TimeToMinutes(ExitTime(1))+10 and C >= ExitPrice(1)+PriceScale*10 Then sell("매도12",AtMarket); } if data2(ma(c,FMM1)) < data2(ma(c,FMM2)) and data6(crossdown(ma(Ordata1,OMMD1),ma(Ordata1,OMMD2))) then{ ExitLong("매수청산",AtMarket); } if data2(ma(c,FMM1)) > data2(ma(c,FMM2)) and data6(crossup(ma(Ordata1,OMMD1),ma(Ordata1,OMMD2))) then{ ExitLong("매도청산",AtMarket); } If MarketPosition == 1 Then { if data6(L) <= O2[BarsSinceEntry]-(LosscutL*data6(PriceScale)) Then ExitLong("콜손절"); if data6(H) >= O2[BarsSinceEntry]+(StopCutL*data6(PriceScale)) Then Exitlong("콜익절"); } If MarketPosition == -1 Then { if data6(L) >= O2[BarsSinceEntry]+(LosscutS*data6(PriceScale)) Then ExitShort("풋손절"); if data6(H) <= O2[BarsSinceEntry]-(StopCutS*data6(PriceScale)) Then ExitShort("풋익절"); } 즐거운 하루되세요 > gaintoga 님이 쓴 글입니다. > 제목 : 수식 부탁드려요~ > 늘 도움 주셔서 감사드리고 있습니다. 아래수식에서 진입 후 익절청산이 되면 그자리에서 바로 또 신호가 나오더라고요. 그래서 1) 익절청산자리에서 10틱 이하에서 +2) 10분 이후 재진입 하도록 바꿔주세요. 좋은 하루 되세요~ input : LSS1(10), LSS2(60), LFF1(10), LFF2(59), FMM1(5), FMM2(20), OMMD1(10), OMMD2(59), LossCutL(20), StopCutL(20); var : Ordata1(0,data6),LBB1(0,data6),LBB2(0,data6); var : Eprice(0,data6),O2(0,data1); Ordata1 = (data4(c)+data5(c)); LBB1 = data6(ma(c,12)); LBB2 = data6(ma(c,20)); O2 = data6(O); if LBB1 > LBB2 and data2(ma(c,LSS1)) > data2(ma(c,LSS2)) and data6(crossup(ma(Ordata1,LFF1),ma(Ordata1,LFF2))) then buy("매수1",AtMarket); if crossup(LBB1,LBB2) then buy("매수2",AtMarket); if LBB1 < LBB2 and data2(ma(c,LSS1)) < data2(ma(c,LSS2)) and data6(crossdown(ma(Ordata1,LFF1),ma(Ordata1,LFF2))) then sell("매도1",AtMarket); if crossdown(LBB1,LBB2) then sell("매도2",AtMarket); if data2(ma(c,FMM1)) < data2(ma(c,FMM2)) and data6(crossdown(ma(Ordata1,OMMD1),ma(Ordata1,OMMD2))) then{ ExitLong("매수청산",AtMarket); } if data2(ma(c,FMM1)) > data2(ma(c,FMM2)) and data6(crossup(ma(Ordata1,OMMD1),ma(Ordata1,OMMD2))) then{ ExitLong("매도청산",AtMarket); } If MarketPosition == 1 Then { if data6(L) <= O2[BarsSinceEntry]-(LosscutL*data6(PriceScale)) Then ExitLong("콜손절"); if data6(H) >= O2[BarsSinceEntry]+(StopCutL*data6(PriceScale)) Then Exitlong("콜익절"); } If MarketPosition == -1 Then { if data6(L) >= O2[BarsSinceEntry]+(LosscutS*data6(PriceScale)) Then ExitLong("풋손절"); if data6(H) <= O2[BarsSinceEntry]-(StopCutS*data6(PriceScale)) Then Exitlong("풋익절"); }