커뮤니티

문의드립니다.

프로필 이미지
라떼처럼
2019-01-07 13:53:09
160
글번호 125015
답변완료
1. 아래식에서 매수 포지션일때 최고가대비 익절(30) 이상이면 최고가 대비 하락(0.1) 10% 하락했을 때의 값을 BHTP1의 계산값으로 SetStopProfittarget(BHLP1)을 하고 싶습니다. 손절의 경우 BHLP로 계산하여 SetStoploss(BHLP) 청산. (매도동일) 2. 전략창에 표시되는 ⓢ의 색깔을 매수시 SetStopProfittarget 청산시 ⓢ는 빨간색으로 SetStoploss 청산시 ⓢ는 파란색으로 표현하고 싶습니다. 매도시 SetStopProfittarget 청산시 ⓢ는 핑크으로 SetStoploss 청산시 ⓢ는 마젠타색으로 표현하고 싶습니다. 부탁드립니다. 감사합니다. ### SetStopProfittarget, SetStoploss input : 익절(30), 하락(0.1), 손절(30); var : BH(0),SL(0),HE(0),LE(0); var : BHT1(0), BHTP1(0), BHL(0), BHLP(0); var : SLT1(0), SLTP1(0), SLL(0), SLLP(0); if MarketPosition == 1 Then{ BH = highest(H,BarsSinceEntry); if MaxEntries == 1 Then HE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) > HE Then HE = LatestEntryPrice(0); ### 수정요청 Start ### if BH >= EntryPrice+PriceScale*익절 then { BHT1 = BH-(BH-EntryPrice)*하락; ## 최고가 대비 10% 하락 BHTP1 = ((BHT1-EntryPrice)/EntryPrice)*100; ## SetStopProfittarget 상수값 } BHL = HE-PriceScale*손절; ## 손절 값 BHLP = ((HE-BHL)/HE)*100; ## SetStoploss 상수값 SetStopProfittarget(BHTP1); ## 빨간색 SetStoploss(BHLP); ## 파란색 } ### 수정요청 End ### if MarketPosition == -1 Then{ SL = Lowest(L,BarsSinceEntry); if MaxEntries == 1 Then LE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) < LE Then LE = LatestEntryPrice(0); ### 수정요청 Start ### if SL <= EntryPrice-PriceScale*익절 then { SLT1 = SL+(EntryPrice-SL)*하락; SLTP1 = ((EntryPrice-SLT1)/EntryPrice)*100; } SLL = SL+PriceScale*손절; SLLP = ((SLL-SL)/SL)*100; SetStopProfittarget(SLTP1); ## 핑크색 SetStoploss(SLLP); ## 마젠타색 } ### 수정요청 End ###
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-01-07 15:33:31

안녕하세요 예스스탁입니다. 1 문의하신 내용은 트레일링 스탑을 지정하시는 내용입니다. 강제청산은 지정한 가격 이상이면 즉시 청산되므로 해당 계산으로 익절이나 손절을 지정하시면 진입즉시 청산이 발생할수 있습니다. 해당 내용은 아래와 같이 구현하셔야 합니다. ### SetStopProfittarget, SetStoploss input : 익절(30), 하락(0.1), 손절(30); var : BH(0),SL(0),HE(0),LE(0); var : BHT1(0), BHTP1(0), BHL(0), BHLP(0); var : SLT1(0), SLTP1(0), SLL(0), SLLP(0); if MarketPosition == 1 Then { BH = highest(H,BarsSinceEntry); if MaxEntries == 1 Then HE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) > HE Then HE = LatestEntryPrice(0); #매수진입이후 최고가가 진입가 대비 +30틱이상이면 #수익폭의 10%가 되돌려지면 즉시 청산 if BH >= EntryPrice+PriceScale*익절 then { ExitLong("BP",AtStop,BH-(BH-HE)*하락); } #최근 진입가-30틱이면 청산 ExitLong("BL",AtStop,HE-PriceScale*손절); } ### 수정요청 End ### if MarketPosition == -1 Then { SL = Lowest(L,BarsSinceEntry); if MaxEntries == 1 Then LE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) < LE Then LE = LatestEntryPrice(0); #매도진입이후 최저가가 진입가대비 -30틱이면 #수익폭 대비 10% 되돌려지면 즉시 청산 if SL <= EntryPrice-PriceScale*익절 then { ExitShort("SP",AtStop,SL+(LE-SL)*하락); } #최근 진입가대비 +30틱이면 청산 ExitShort("SL",AtStop,LE+PriceScale*손절); } 2 강제청산의 색상은 설정창의 강제청산 탭에서 지정하셔야 합니다. 수식에서는 설정이 되지 않습니다. 즐거운 하루되세요 > 라떼처럼 님이 쓴 글입니다. > 제목 : 문의드립니다. > 1. 아래식에서 매수 포지션일때 최고가대비 익절(30) 이상이면 최고가 대비 하락(0.1) 10% 하락했을 때의 값을 BHTP1의 계산값으로 SetStopProfittarget(BHLP1)을 하고 싶습니다. 손절의 경우 BHLP로 계산하여 SetStoploss(BHLP) 청산. (매도동일) 2. 전략창에 표시되는 ⓢ의 색깔을 매수시 SetStopProfittarget 청산시 ⓢ는 빨간색으로 SetStoploss 청산시 ⓢ는 파란색으로 표현하고 싶습니다. 매도시 SetStopProfittarget 청산시 ⓢ는 핑크으로 SetStoploss 청산시 ⓢ는 마젠타색으로 표현하고 싶습니다. 부탁드립니다. 감사합니다. ### SetStopProfittarget, SetStoploss input : 익절(30), 하락(0.1), 손절(30); var : BH(0),SL(0),HE(0),LE(0); var : BHT1(0), BHTP1(0), BHL(0), BHLP(0); var : SLT1(0), SLTP1(0), SLL(0), SLLP(0); if MarketPosition == 1 Then{ BH = highest(H,BarsSinceEntry); if MaxEntries == 1 Then HE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) > HE Then HE = LatestEntryPrice(0); ### 수정요청 Start ### if BH >= EntryPrice+PriceScale*익절 then { BHT1 = BH-(BH-EntryPrice)*하락; ## 최고가 대비 10% 하락 BHTP1 = ((BHT1-EntryPrice)/EntryPrice)*100; ## SetStopProfittarget 상수값 } BHL = HE-PriceScale*손절; ## 손절 값 BHLP = ((HE-BHL)/HE)*100; ## SetStoploss 상수값 SetStopProfittarget(BHTP1); ## 빨간색 SetStoploss(BHLP); ## 파란색 } ### 수정요청 End ### if MarketPosition == -1 Then{ SL = Lowest(L,BarsSinceEntry); if MaxEntries == 1 Then LE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) < LE Then LE = LatestEntryPrice(0); ### 수정요청 Start ### if SL <= EntryPrice-PriceScale*익절 then { SLT1 = SL+(EntryPrice-SL)*하락; SLTP1 = ((EntryPrice-SLT1)/EntryPrice)*100; } SLL = SL+PriceScale*손절; SLLP = ((SLL-SL)/SL)*100; SetStopProfittarget(SLTP1); ## 핑크색 SetStoploss(SLLP); ## 마젠타색 } ### 수정요청 End ###