커뮤니티

문의드립니다.

프로필 이미지
잡다백수
2018-08-10 11:29:37
134
글번호 121275
답변완료
도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다. 1. 기타 코딩 부탁드립니다. -수익이 n틱이 넘어가면 -아래 트레일링 스탑으로 저장해놓은 외부변수의 절반값으로 트레일링스탑값을 줄임 -만약 현재값이 트레일링스탑값에 걸려 있다면 즉시 청산(안되면 atmarket으로) input: TsValue(1); var: Hvalue(0),Lvalue(0); If MarketPosition() == 1 Then { Hvalue = Highest(H,BarsSinceEntry+1); ExitLong("trailstop_EL", Atstop, Hvalue-TsValue*PriceScale); } If MarketPosition() == -1 Then { Lvalue = Lowest(L,BarsSinceEntry+1); ExitShort("trailStop_Es", Atstop, Lvalue + TsValue*PriceScale); } 2. 기타 -수익이 [설정틱1]이 넘어가면 -아래 [트레일링스탑]의 절반값으로 트레일링스탑틱값을 줄임 -수익이 [설정틱2]를 넘어가면 -[트레일링스탑]의 3분의 1값으로 트레일링스탑값을 줄임. -만약 현재값이 트레일링스탑값에 걸려 있다면 즉시 청산(안되면 atmarket으로)
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-08-10 15:19:50

안녕하세요 예스스탁입니다. 1 input: TsValue(1),N(20); var: Hvalue(0),Lvalue(0); If MarketPosition() == 1 Then { Hvalue = Highest(H,BarsSinceEntry+1); if Hvalue < EntryPrice+PriceScale*n Then ExitLong("trailstop_EL1", Atstop, Hvalue-TsValue*PriceScale); Else ExitLong("trailstop_EL2", Atstop, Hvalue-(TsValue/2)*PriceScale); } If MarketPosition() == -1 Then { Lvalue = Lowest(L,BarsSinceEntry+1); if Lvalue > EntryPrice-PriceScale*n Then ExitShort("trailStop_Es1", Atstop, Lvalue + TsValue*PriceScale); Else ExitShort("trailStop_Es2", Atstop, Lvalue + (TsValue/2)*PriceScale); } 2 input: TsValue(1),N1(10),N2(20); var: Hvalue(0),Lvalue(0); If MarketPosition() == 1 Then { Hvalue = Highest(H,BarsSinceEntry+1); if Hvalue < EntryPrice+PriceScale*n1 Then ExitLong("trailstop_EL1", Atstop, Hvalue-TsValue*PriceScale); if Hvalue >= EntryPrice+PriceScale*n1 and Hvalue < EntryPrice+PriceScale*n2 Then ExitLong("trailstop_EL2", Atstop, Hvalue-(TsValue/2)*PriceScale); if Hvalue >= EntryPrice+PriceScale*n2 Then ExitLong("trailstop_EL3", Atstop, Hvalue-(TsValue/3)*PriceScale); } If MarketPosition() == -1 Then { Lvalue = Lowest(L,BarsSinceEntry+1); if Lvalue > EntryPrice-PriceScale*n1 Then ExitShort("trailStop_Es1", Atstop, Lvalue + TsValue*PriceScale); if Lvalue <= EntryPrice-PriceScale*n1 and Lvalue > EntryPrice-PriceScale*n2 Then ExitShort("trailStop_Es2", Atstop, Lvalue + (TsValue/2)*PriceScale); if Lvalue <= EntryPrice-PriceScale*n2 Then ExitShort("trailStop_Es3", Atstop, Lvalue + (TsValue/3)*PriceScale); } 즐거운 하루되세요 > 잡다백수 님이 쓴 글입니다. > 제목 : 문의드립니다. > 도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다. 1. 기타 코딩 부탁드립니다. -수익이 n틱이 넘어가면 -아래 트레일링 스탑으로 저장해놓은 외부변수의 절반값으로 트레일링스탑값을 줄임 -만약 현재값이 트레일링스탑값에 걸려 있다면 즉시 청산(안되면 atmarket으로) input: TsValue(1); var: Hvalue(0),Lvalue(0); If MarketPosition() == 1 Then { Hvalue = Highest(H,BarsSinceEntry+1); ExitLong("trailstop_EL", Atstop, Hvalue-TsValue*PriceScale); } If MarketPosition() == -1 Then { Lvalue = Lowest(L,BarsSinceEntry+1); ExitShort("trailStop_Es", Atstop, Lvalue + TsValue*PriceScale); } 2. 기타 -수익이 [설정틱1]이 넘어가면 -아래 [트레일링스탑]의 절반값으로 트레일링스탑틱값을 줄임 -수익이 [설정틱2]를 넘어가면 -[트레일링스탑]의 3분의 1값으로 트레일링스탑값을 줄임. -만약 현재값이 트레일링스탑값에 걸려 있다면 즉시 청산(안되면 atmarket으로)