커뮤니티

3개의 지표를 수정바랍니다.

프로필 이미지
외국인
2011-06-07 18:49:18
612
글번호 39502
답변완료
우선 먼저 인사합니다 감사합니다 수동진입후 자동청산식을 하고싶습니다. 단 3개의 지표를 시간별로 하고싶고요 중복매수신호가나오는데 어떻게해야하는지요 잦은매매가 이루어 지는데 안일어나게 할수는 없는지요 최적화 부탁드립니다 Input : position(1),시스템적용시간(90000); if index == 0 Then{ if position == 1 Then buy(); if position == -1 Then sell(); } if CurrentDate == sdate and stime >= 시스템적용시간 Then{ if MarketPosition == 1 and 매수청산조건 Then exitlong("bx1"); if MarketPosition == -1 and 매도청산조건 then ExitShort("sx1"); } input : stoploss(0.01), break(0.016),bigprofit(0.036),vv(2.5); var1 = data1(c); var2 = data1(H); var3 = data1(L); if var1 > var2[1] Then buy("매수"); If marketposition ==1 then { if var3 <= var1[1]-data1(atr(30)[1])*vv then exitlong("매수변동성"); } If marketposition == 1 then { if var3 <= var1[BarsSinceEntry]*0.99 then ExitLong("매수손절"); } if var1 < var3[1] Then sell("매도"); If marketposition == 1 then { if var2 >= var1[1]+data1(atr(30)[1])*vv then ExitLong("매도변동성"); } If marketposition == 1 then { if var2 >= var1[BarsSinceEntry]*1.01 then ExitLong("매도손절"); } Inputs: PercentRLen(10), OverSold(10), OverBought(90), Trigger(62); Variables: PcntR(0), AvgValue(0), Setup1(False), Setup2(False); PcntR = PercentR(PercentRLen); AvgValue = MA(Close, PercentRLen); If PcntR < OverSold Then Setup1 = True; If PcntR > OverBought Then Setup1 = False; If PcntR > OverBought Then Setup2 = True; If PcntR < OverSold Then Setup2 = False; If Setup1 AND AvgValue > AvgValue[1] AND Crossup(PcntR,Trigger) Then Begin Setup1 = False; Buy ("11시이후매수"); If marketposition ==1 then { if var3 <= var1[1]-data1(atr(30)[1])*vv then exitlong("매수변동성1"); } If marketposition == 1 then { if var3 <= var1[BarsSinceEntry]*0.99 then ExitLong("매수손절1"); } End; If Setup2 AND AvgValue < AvgValue[1] AND CrossDown(PcntR, Trigger) Then Begin Setup2 = False; Sell ("11시이후매도"); If marketposition == 1 then { if var2 >= var1[1]+data1(atr(30)[1])*vv then ExitLong("매도변동성1"); } If marketposition == 1 then { if var2 >= var1[BarsSinceEntry]*1.01 then ExitLong("매도손절1"); } End; Inputs: Length1(20),Length2(12),Length3(12),OverSold11(30),OverBought11(70); Variables: KLine(0), DLine(0); KLine = StochasticsK(Length1,Length2); DLine = StochasticsD(Length1,Length2,Length3); If Crossup(KLine, DLine) AND KLine < OverSold11 AND DLine < OverSold11 Then buy("스토매수"); If marketposition ==1 then { if var3 <= var1[1]-data1(atr(30)[1])*vv then exitlong("매수변동성2"); } If marketposition == 1 then { if var3 <= var1[BarsSinceEntry]*0.99 then ExitLong("매수손절2"); } If CrossDown(KLine, DLine) AND KLine > OverBought11 AND DLine < OverBought11 Then sell ("스토매도"); If marketposition == 1 then { if var2 >= var1[1]+data1(atr(30)[1])*vv then ExitLong("매도변동성2"); } If marketposition == 1 then { if var2 >= var1[BarsSinceEntry]*1.01 then ExitLong("매도손절2");
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-06-08 10:37:44

안녕하세요 예스스탁입니다. 식을 어떻게 구성해야 할지 모르겠습니다. 수동진입후 자동청산하는식에서 진입은 과거의 임의의 봉에 발생시키는 가짜 신호입니다. 이신호를 기점으로 계산되는 식은 의미가 없고 진입을 수동으로 하시므로 진입식은 모두 제거되어야만 합니다. 각식의 시간대를 지정해 주시기 바랍니다. 즐거운 하루되세요 > 외국인 님이 쓴 글입니다. > 제목 : 3개의 지표를 수정바랍니다. > 우선 먼저 인사합니다 감사합니다 수동진입후 자동청산식을 하고싶습니다. 단 3개의 지표를 시간별로 하고싶고요 중복매수신호가나오는데 어떻게해야하는지요 잦은매매가 이루어 지는데 안일어나게 할수는 없는지요 최적화 부탁드립니다 Input : position(1),시스템적용시간(90000); if index == 0 Then{ if position == 1 Then buy(); if position == -1 Then sell(); } if CurrentDate == sdate and stime >= 시스템적용시간 Then{ if MarketPosition == 1 and 매수청산조건 Then exitlong("bx1"); if MarketPosition == -1 and 매도청산조건 then ExitShort("sx1"); } input : stoploss(0.01), break(0.016),bigprofit(0.036),vv(2.5); var1 = data1(c); var2 = data1(H); var3 = data1(L); if var1 > var2[1] Then buy("매수"); If marketposition ==1 then { if var3 <= var1[1]-data1(atr(30)[1])*vv then exitlong("매수변동성"); } If marketposition == 1 then { if var3 <= var1[BarsSinceEntry]*0.99 then ExitLong("매수손절"); } if var1 < var3[1] Then sell("매도"); If marketposition == 1 then { if var2 >= var1[1]+data1(atr(30)[1])*vv then ExitLong("매도변동성"); } If marketposition == 1 then { if var2 >= var1[BarsSinceEntry]*1.01 then ExitLong("매도손절"); } Inputs: PercentRLen(10), OverSold(10), OverBought(90), Trigger(62); Variables: PcntR(0), AvgValue(0), Setup1(False), Setup2(False); PcntR = PercentR(PercentRLen); AvgValue = MA(Close, PercentRLen); If PcntR < OverSold Then Setup1 = True; If PcntR > OverBought Then Setup1 = False; If PcntR > OverBought Then Setup2 = True; If PcntR < OverSold Then Setup2 = False; If Setup1 AND AvgValue > AvgValue[1] AND Crossup(PcntR,Trigger) Then Begin Setup1 = False; Buy ("11시이후매수"); If marketposition ==1 then { if var3 <= var1[1]-data1(atr(30)[1])*vv then exitlong("매수변동성1"); } If marketposition == 1 then { if var3 <= var1[BarsSinceEntry]*0.99 then ExitLong("매수손절1"); } End; If Setup2 AND AvgValue < AvgValue[1] AND CrossDown(PcntR, Trigger) Then Begin Setup2 = False; Sell ("11시이후매도"); If marketposition == 1 then { if var2 >= var1[1]+data1(atr(30)[1])*vv then ExitLong("매도변동성1"); } If marketposition == 1 then { if var2 >= var1[BarsSinceEntry]*1.01 then ExitLong("매도손절1"); } End; Inputs: Length1(20),Length2(12),Length3(12),OverSold11(30),OverBought11(70); Variables: KLine(0), DLine(0); KLine = StochasticsK(Length1,Length2); DLine = StochasticsD(Length1,Length2,Length3); If Crossup(KLine, DLine) AND KLine < OverSold11 AND DLine < OverSold11 Then buy("스토매수"); If marketposition ==1 then { if var3 <= var1[1]-data1(atr(30)[1])*vv then exitlong("매수변동성2"); } If marketposition == 1 then { if var3 <= var1[BarsSinceEntry]*0.99 then ExitLong("매수손절2"); } If CrossDown(KLine, DLine) AND KLine > OverBought11 AND DLine < OverBought11 Then sell ("스토매도"); If marketposition == 1 then { if var2 >= var1[1]+data1(atr(30)[1])*vv then ExitLong("매도변동성2"); } If marketposition == 1 then { if var2 >= var1[BarsSinceEntry]*1.01 then ExitLong("매도손절2");