커뮤니티

수식 하나 부탁드립니다.

프로필 이미지
찬찬히
2015-06-18 22:05:46
108
글번호 87397
답변완료
MACD 가 데드크로스 되었을때 1계약 매도 진입. 매도 진입 후 30틱 수익시 청산. 매도 진입 후 진입가 보다 15틱 손실 때 1계약 더 진입. 2계약 진입 되었을때 30틱 수익시 청산. 14틱 손실시 컷. 매수도 마찬가지 입니다. 아 그리고 하나 질문이 있는데요... 왜 항상 종가에 진입을 하죠? 조건을 만족하면 즉시 진입해야 하는데.. MACD 골든크로스나 데드크로스 시점에 진입해야 하는데.. 해당봉 종가에 진입을 하네요.. 해당 시점에 진입하게 할 수는 없나요? 부탁드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-06-19 13:41:21

안녕하세요 예스스탁입니다. 수식은 완성봉의 데이터값만 사용하고 if문이 봉완성시에 최종 조건을 체크하게 되어 있습니다. 기술적지표의 크로스는 봉완성시로만 만족여부 체크가 가능합니다. Input : short(12), long(26), sig(9); Var : MACDv(0), MACDs(0); MACDv = MACD(short, long); MACDs = ema(MACDv,sig); if MarketPosition >= 0 and CrossDown(MACDv,MACDs) Then sell("s1",OnClose,def,1); if MarketPosition == -1 Then{ if MaxEntries == 1 Then{ sell("s2",Atlimit,EntryPrice+PriceScale*15,1); ExitShort("SP1",atlimit,EntryPrice-PriceScale*30); } if MaxEntries == 2 Then{ ExitShort("SL",AtStop,LatestEntryPrice+PriceScale*14); ExitShort("SP2",atlimit,AvgEntryPrice-PriceScale*30); } } if MarketPosition <= 0 and CrossUp(MACDv,MACDs) Then buy("b1",OnClose,def,1); if MarketPosition == 1 Then{ if MaxEntries == 1 Then{ Buy("b2",Atlimit,EntryPrice-PriceScale*15,1); ExitLong("BP1",atlimit,EntryPrice+PriceScale*30); } if MaxEntries == 2 Then{ ExitLong("BL",AtStop,LatestEntryPrice-PriceScale*14); ExitLong("BP2",atlimit,AvgEntryPrice+PriceScale*30); } } 즐거운 하루되세요 > 찬찬히 님이 쓴 글입니다. > 제목 : 수식 하나 부탁드립니다. > MACD 가 데드크로스 되었을때 1계약 매도 진입. 매도 진입 후 30틱 수익시 청산. 매도 진입 후 진입가 보다 15틱 손실 때 1계약 더 진입. 2계약 진입 되었을때 30틱 수익시 청산. 14틱 손실시 컷. 매수도 마찬가지 입니다. 아 그리고 하나 질문이 있는데요... 왜 항상 종가에 진입을 하죠? 조건을 만족하면 즉시 진입해야 하는데.. MACD 골든크로스나 데드크로스 시점에 진입해야 하는데.. 해당봉 종가에 진입을 하네요.. 해당 시점에 진입하게 할 수는 없나요? 부탁드립니다.