커뮤니티

수식 문의드립니다.

프로필 이미지
cooparoo
2024-04-16 07:38:22
746
글번호 178599
답변완료
안녕하세요. 몇가지 수식 문의드립니다. 아래와 같은 식에서 Input : shortPeriod(5), longPeriod(20); Input : Y(3.4),N2(0.3),A(3.44),N3(0.77); value1 = ma(C, shortPeriod); value2 = ma(C, longPeriod); # 매수/매도청산 If CrossUP(value1, value2) Then { Buy("b1"); } # 매도/매수청산 If CrossDown(value1, value2) Then { Sell("s1"); } #진입이후 Y이상 상승후 최고가에서 N2포인트 하락하면 청산 if MarketPosition == 1 Then{ if highest(h,BarsSinceEntry) >= EntryPrice+Y Then ExitLong("매수익절",AtStop,highest(H,BarsSinceEntry)-N2); } #진입이후 A이상 하락후 최저가에서 N3포인트 상승하면 청산 if MarketPosition == -1 Then{ if Lowest(L,BarsSinceEntry) <= EntryPrice-A Then ExitShort("매도익절",AtStop,Lowest(L,BarsSinceEntry)+N3); } ########################################## 위 수식에 오류가 없는지 검토 부탁 드립니다. 그리고 위 수식에 추가 하고 싶은 것들이 있습니다. 1. b1(매수) 진입가에서 몇 포인트 하락하면 추가로 1계약 진입하는식(외부변수) 2. s1(매도) 도 마찬가지로 얼마이상 오르면(포인트) 1계약 추가하는식. 3. 그리고 매수/매도 각각 setstoppoint 손절을 넣고 싶은데요 방법은 예를들어 "b1" 진입후에 추가 "b2" 가 진입해서 2계약일때 AvgEntryPrice 가 아니고 "b1" 의 지정손절가에 "b2" 도 같이 청산되는 방법좀 부탁드립니다. 2계약의 평균가가 기준이 아니라 첫 진입가를 기준으로 조건만족 되면 나머지 "b2"는 같이 손절하는식으로 부탁드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-04-16 15:37:00

안녕하세요 예스스탁입니다. 1 작성하신 청산식에 오류는 없습니다. 올리신 내용과 같이 작성이 되었습니다. 2 추가진입을 하므로 시스템 적용시에 시스템 트레이딩 설정창에서 피라미딩을 모든진입신호허용으로 설정하고 적용하셔야 합니다. Input : shortPeriod(5), longPeriod(20); Input : Y(3.4),N2(0.3),A(3.44),N3(0.77); input : 추가진입(1),손절(5); value1 = ma(C, shortPeriod); value2 = ma(C, longPeriod); # 매수/매도청산 If CrossUP(value1, value2) Then { Buy("b1"); } # 매도/매수청산 If CrossDown(value1, value2) Then { Sell("s1"); } #진입이후 Y이상 상승후 최고가에서 N2포인트 하락하면 청산 if MarketPosition == 1 Then { if highest(h,BarsSinceEntry) >= EntryPrice+Y Then ExitLong("매수익절",AtStop,highest(H,BarsSinceEntry)-N2); Buy("b2",AtLimit,LatestEntryPrice(0)-추가진입); ExitLong("매수손절",AtStop,EntryPrice-손절); } #진입이후 A이상 하락후 최저가에서 N3포인트 상승하면 청산 if MarketPosition == -1 Then { if Lowest(L,BarsSinceEntry) <= EntryPrice-A Then ExitShort("매도익절",AtStop,Lowest(L,BarsSinceEntry)+N3); Sell("s2",AtLimit,LatestEntryPrice(0)+추가진입); ExitShort("매도손절",AtStop,EntryPrice+손절); } 즐거운 하루되세요 > cooparoo 님이 쓴 글입니다. > 제목 : 수식 문의드립니다. > 안녕하세요. 몇가지 수식 문의드립니다. 아래와 같은 식에서 Input : shortPeriod(5), longPeriod(20); Input : Y(3.4),N2(0.3),A(3.44),N3(0.77); value1 = ma(C, shortPeriod); value2 = ma(C, longPeriod); # 매수/매도청산 If CrossUP(value1, value2) Then { Buy("b1"); } # 매도/매수청산 If CrossDown(value1, value2) Then { Sell("s1"); } #진입이후 Y이상 상승후 최고가에서 N2포인트 하락하면 청산 if MarketPosition == 1 Then{ if highest(h,BarsSinceEntry) >= EntryPrice+Y Then ExitLong("매수익절",AtStop,highest(H,BarsSinceEntry)-N2); } #진입이후 A이상 하락후 최저가에서 N3포인트 상승하면 청산 if MarketPosition == -1 Then{ if Lowest(L,BarsSinceEntry) <= EntryPrice-A Then ExitShort("매도익절",AtStop,Lowest(L,BarsSinceEntry)+N3); } ########################################## 위 수식에 오류가 없는지 검토 부탁 드립니다. 그리고 위 수식에 추가 하고 싶은 것들이 있습니다. 1. b1(매수) 진입가에서 몇 포인트 하락하면 추가로 1계약 진입하는식(외부변수) 2. s1(매도) 도 마찬가지로 얼마이상 오르면(포인트) 1계약 추가하는식. 3. 그리고 매수/매도 각각 setstoppoint 손절을 넣고 싶은데요 방법은 예를들어 "b1" 진입후에 추가 "b2" 가 진입해서 2계약일때 AvgEntryPrice 가 아니고 "b1" 의 지정손절가에 "b2" 도 같이 청산되는 방법좀 부탁드립니다. 2계약의 평균가가 기준이 아니라 첫 진입가를 기준으로 조건만족 되면 나머지 "b2"는 같이 손절하는식으로 부탁드립니다.