커뮤니티

시스템식 부탁드립니다.

프로필 이미지
양치기
2024-01-17 11:54:59
779
글번호 175835
답변완료
항상 도움주셔서 감사합니다. 지난번 문의 드린 내용인데 청산들 내용이 모호하다 하셔서 다시 내용수정하여 문의 드립니다. 아래의 조건에 맞는 시스템식 부탁드립다. 종목 : 해외선물 차트 : 1분봉 요청식1 매수조건 매수/매도 : 외부입력변수로 설정 매수진입 이후 가격이 상승하면 일정 간격으로 1계약씩 추가 매수하고 - 불타기 매수진입 이후 가격이 하락하면 일정 간격으로 일정배수 만큼 추가 매수 합니다. - 물타기(가격 하락시 일정배수로 매수) 불타기 청산은 포지션 전체수익이 일정 금액($) 이상 수익이면 청산(큰 금액으로 설정) 물타기 청산은 포지션 전체수익이 일정 금액($) 이상 수익이면 청산(작은금액으로 설정) 단, 불타기 진입의 경우 트레일링 스탑을 적용하고 싶습니다. - 전체 포지션 수익금액에서 20$ 하락시 청산 아래와 같이 코딩했는데 제대로 안되는것 같습니다. 시스템식 수정 부탁드립니다. input : Pst(1); input : gap(20), tgap(20), pt(25), pt2(100), multi(0.7); var : vol(0),vol2(0); value1 = gap/PointValue; value2 = tgap/PointValue; // 불타기 트레일링 스탑 value3 = pt/PointValue; //물타기 청산 value4 = pt2/PointValue; //불타기 청산 if pst == 1 Then { if MarketPosition == 0 and TotalTrades == TotalTrades[1] Then { vol = 1; vol2 = 1; Buy("b",OnClose,Def,vol); } if MarketPosition == 1 Then { if CurrentContracts > CurrentContracts[1] Then vol = vol+Round(vol*multi,0); vol2 = vol2+1; Buy("upb",AtLimit,EntryPrice(0)+(PriceScale*value1)*MaxEntries,vol2); Buy("dnb",AtLimit,EntryPrice(0)-(PriceScale*value1)*MaxEntries,vol); exitlong("bx",AtLimit,EntryPrice(0)+PriceScale*Value3); exitlong("bp",AtLimit,AvgEntryPrice+PriceScale*Value2); } } 요청식2 매수조건 매수/매도 : 외부입력변수로 설정 매수진입 이후 가격이 상승하면 일정 간격으로 1계약씩 추가 매수하고(불타기) 매수진입 이후 가격이 하락하면 일정 간격으로 1계약씩 추가 매수 합니다.(물타기) 불타기 매수청산은 포지션 전체수익이 일정금액($) 이상 수익(큰금액)이 나면 청산 단,불타기 진입의 경우 트레일링 스탑을 적용하고 싶습니다. - 전체 포지션 수익금액에서 20$ 하락시 청산 물타기 진입의 경우 가격이 다시 일정금액(20$) 상승한 경우 진입한 계약별로 포지션 수익이 20$ 이상이면 개별 청산하고 싶습니다. 그러다가 가격이 다시 하락하면 다시 1계약씩 추가 진입합니다. 이런식으로 청산과 진입을 반복하다 현재 포지션 수익과 포지션 오픈이후 청산수익이 일정금액(20$) 이상 수익이면 물타기 전체 포지션을 청산합니다. 제가 올려드린 샘플 코딩을 바탕으로 시스템식 수정 부탁드립니다. 요청식3 매수조건 매수/매도 : 외부입력변수로 설정 매수진입 이후 가격이 상승하면 처음 진입한 1계약만 유지하고 매수진입 이후 가격이 하락하면 일정 간격으로 1계약씩 추가 매수 합니다.(물타기) 매수청산은 가격이 상승한 경우 매수청산은 포지션 전체수익이 일정금액 ($) 이상 수익이 나면 청산합니다. 반대로 가격이 하락하여 물타기 진입한 경우 전체 계약수가 10계약 이내이면 포지션 전체수익이 일정금액($) 이상 수익이 나면 청산합니다. 단, 가격이 계속 하락하여 10계약 이상 진입이 필요한 경우 가격이 하락하여 추가로 진입 할때마다 처음 진입한 계약부터 1계약씩 손절(20$) 하고 싶습니다. (1계약씩 추가 진입하고 1계약씩 추가 손절하기 때문에 계약수는 10계약씩 유지되다가, 가격이 상승하면 포지션 전체 수익이 일정금액($) 이상 수익이 나면 청산합니다. 제가 올려드린 샘플 코딩을 바탕으로 시스템식 수정 부탁드립니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-01-17 17:15:52

> 양치기 님이 쓴 글입니다. > 제목 : 시스템식 부탁드립니다. > 항상 도움주셔서 감사합니다. 지난번 문의 드린 내용인데 청산들 내용이 모호하다 하셔서 다시 내용수정하여 문의 드립니다. 아래의 조건에 맞는 시스템식 부탁드립다. 종목 : 해외선물 차트 : 1분봉 요청식1 매수조건 매수/매도 : 외부입력변수로 설정 매수진입 이후 가격이 상승하면 일정 간격으로 1계약씩 추가 매수하고 - 불타기 매수진입 이후 가격이 하락하면 일정 간격으로 일정배수 만큼 추가 매수 합니다. - 물타기(가격 하락시 일정배수로 매수) 불타기 청산은 포지션 전체수익이 일정 금액($) 이상 수익이면 청산(큰 금액으로 설정) 물타기 청산은 포지션 전체수익이 일정 금액($) 이상 수익이면 청산(작은금액으로 설정) 단, 불타기 진입의 경우 트레일링 스탑을 적용하고 싶습니다. - 전체 포지션 수익금액에서 20$ 하락시 청산 아래와 같이 코딩했는데 제대로 안되는것 같습니다. 시스템식 수정 부탁드립니다. input : Pst(1); input : gap(20), tgap(20), pt(25), pt2(100), multi(0.7); var : vol(0),vol2(0); value1 = gap/PointValue; value2 = tgap/PointValue; // 불타기 트레일링 스탑 value3 = pt/PointValue; //물타기 청산 value4 = pt2/PointValue; //불타기 청산 if pst == 1 Then { if MarketPosition == 0 and TotalTrades == TotalTrades[1] Then { vol = 1; vol2 = 1; Buy("b",OnClose,Def,vol); } if MarketPosition == 1 Then { if CurrentContracts > CurrentContracts[1] Then vol = vol+Round(vol*multi,0); vol2 = vol2+1; Buy("upb",AtLimit,EntryPrice(0)+(PriceScale*value1)*MaxEntries,vol2); Buy("dnb",AtLimit,EntryPrice(0)-(PriceScale*value1)*MaxEntries,vol); exitlong("bx",AtLimit,EntryPrice(0)+PriceScale*Value3); exitlong("bp",AtLimit,AvgEntryPrice+PriceScale*Value2); } } 요청식2 매수조건 매수/매도 : 외부입력변수로 설정 매수진입 이후 가격이 상승하면 일정 간격으로 1계약씩 추가 매수하고(불타기) 매수진입 이후 가격이 하락하면 일정 간격으로 1계약씩 추가 매수 합니다.(물타기) 불타기 매수청산은 포지션 전체수익이 일정금액($) 이상 수익(큰금액)이 나면 청산 단,불타기 진입의 경우 트레일링 스탑을 적용하고 싶습니다. - 전체 포지션 수익금액에서 20$ 하락시 청산 물타기 진입의 경우 가격이 다시 일정금액(20$) 상승한 경우 진입한 계약별로 포지션 수익이 20$ 이상이면 개별 청산하고 싶습니다. 그러다가 가격이 다시 하락하면 다시 1계약씩 추가 진입합니다. 이런식으로 청산과 진입을 반복하다 현재 포지션 수익과 포지션 오픈이후 청산수익이 일정금액(20$) 이상 수익이면 물타기 전체 포지션을 청산합니다. 제가 올려드린 샘플 코딩을 바탕으로 시스템식 수정 부탁드립니다. 요청식3 매수조건 매수/매도 : 외부입력변수로 설정 매수진입 이후 가격이 상승하면 처음 진입한 1계약만 유지하고 매수진입 이후 가격이 하락하면 일정 간격으로 1계약씩 추가 매수 합니다.(물타기) 매수청산은 가격이 상승한 경우 매수청산은 포지션 전체수익이 일정금액 ($) 이상 수익이 나면 청산합니다. 반대로 가격이 하락하여 물타기 진입한 경우 전체 계약수가 10계약 이내이면 포지션 전체수익이 일정금액($) 이상 수익이 나면 청산합니다. 단, 가격이 계속 하락하여 10계약 이상 진입이 필요한 경우 가격이 하락하여 추가로 진입 할때마다 처음 진입한 계약부터 1계약씩 손절(20$) 하고 싶습니다. (1계약씩 추가 진입하고 1계약씩 추가 손절하기 때문에 계약수는 10계약씩 유지되다가, 가격이 상승하면 포지션 전체 수익이 일정금액($) 이상 수익이 나면 청산합니다. 제가 올려드린 샘플 코딩을 바탕으로 시스템식 수정 부탁드립니다. 감사합니다.