커뮤니티

부탁드립니다.

프로필 이미지
라떼처럼
2019-07-21 23:07:11
252
글번호 130509
답변완료
수식 부탁드립니다. 감사드립니다 1) 조건(아래 예시참조) 7시 30분 현재가가 기준가 A 이고 A 대비 10틱 상승하면 기준가가 A+10틱의 현재가가 기준가(A')로 변경되고 B=1 A'에서 다시 10틱 상승하면 A'+10틱의 현재가가 기준가로(A'') 변경되고 B=2, 기준가에서 추가 10틱 상승하면 기준가(A''')로 변경, B=3... 기준가는 10틱 변화된 현재가로 수시로 변하고 연속으로 상승될경우 B=1,2,3,4,5..로 변경 기준가 대비 연속 10틱 상승으로 B=1,2,3.. 되다가 기준가 대비 -10틱 되면 S=1로 변경, 다시 기준가 대비 10틱 상승하면 B=1 부터 다시 시작 기준가(10틱 변화후의 현재값) 대비 10틱 상승 하락하면 B,S가 1씩 증가하고 (1,2,3,4,5,..) 증가 중 한번이라도 역방향으로 하락 상승하면 B,S가 1부터 다시 시작하여 증가 *표시 B=1,2,3(빨간색).. S=1,2,3,,(파란색) 을 차트 캔들위에 표시해 주시길 요청드립니다. (단순 1,2,3,4이고 색깔만 다르게 표시) 2)진입 매도 : B=1일때 1개 매도, B=2일때 2개 매도, B=3 이상일때는 3개 매도 매수 : S=1일때 1개 매수, S=2일때 2개 매수, S=3 이상일때는 3개 매수 진입 수량은 매도 매수 각각 최대 N 개로 제한하고 싶습니다. 3)손절1: 매도일때 매도된 5개 총 수익이 마이너스 일때 최고가 대비 10틱이 하락 했을때 수익이 -(진입수량 * U(상수)) 값보다 작으면 청산되는 식을 부탁드립니다. *예시: 진입수5, 현재가 2000 (매도 5개총수익: -100틱), 현재가 2005 (수익: -150틱), <-- 최대값: 2005 현재가 1995(-10틱하락) (수익: -50틱) ==> -(진입수(5)*U(5))= -25틱 보다 작음 ==>손절(진입된 5개 모두 청산) * 매수는 반대로 해주세요 4)손절2: 진입된 매도 수량이 5개 이상이고 수익이 50틱 이상까지 갔다면 0틱으로 다시 되돌림 하면 손절(진입수량 모두 청산) * 매수는 반대로 해주세요 5)청산(두가지 부탁드립니다) 1)매도, 매수 포지션일때 진입된 수익 총합이 100틱이상이면 전부청산 2)매도, 배수 포지션일때 진입된 수익 총합이 100틱이상이면 최고수익대비 수익이 20%하락하면 전부 청산 1)조건 예시 7시 30분 현재가: A(기준가) A+10틱 ==> B=1 (A'=A+10틱 현재가) A'+10틱 ==> B=2 (A''=A'+10틱 현재가) A''+10틱 ==> B=3 (A'''=A''+10틱 현재가) A'''+10틱 ==> B=4 (A''''=A'''+10틱 현재가) A''''+10틱 ==> B=5 (A'''''=A''''+10틱 현재가) 지속.. A+10틱 ==> B=1 (A'=A+10틱 현재가) A'+10틱 ==> B=2 (A''=A'+10틱 현재가) A''-10틱 ==> S=1 (A'''=A''-10틱 현재가) A'''-10틱 ==> S=2 (A'''=A''-10틱 현재가) A''''-10틱 ==> S=3 (A''''=A'''-10틱 현재가) A'''''+10틱 ==> B=1 (A'''''=A''''+10틱 현재가) 감사합니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-07-23 10:12:04

안녕하세요 예스스탁입니다. input : n(5),u(5); var : tx(0),ll(0),hh(0); if (sdate != sdate[1] and stime >= 73000) or (sdate == sdate[1] and stime >= 73000 and stime[1] < 73000) Then { var1 = c; var2 = 0; } else { if H >= var1+PriceScale*10 Then { var1 = var1 + PriceScale*10; if var2[1] >= 0 Then var2 = var2+1; Else var2 = 1; tx = Text_New(sdate,stime,H,NumToStr(abs(var2),0)); Text_SetColor(tx,RED); if MarketPosition >= 0 or MaxContracts < n Then sell("s",OnClose,def,1); } if L <= var1-PriceScale*10 Then { var1 = var1 - PriceScale*10; if var1 <= 0 Then var2 = var2-1; Else var2 = -1; tx = Text_New(sdate,stime,L,NumToStr(abs(var2),0)); Text_SetColor(tx,BLUE); if MarketPosition <= 0 or MaxContracts < n Then Buy("b",OnClose,def,1); } } if MarketPosition == -1 then { if CurrentContracts > CurrentContracts[1] Then { hh = h; ll = L; } if h > hh Then hh = h; if l < ll Then ll = l; ExitShort("sp1",Atlimit,AvgEntryPrice-(PriceScale*100)/CurrentContracts); if ll <= AvgEntryPrice-(PriceScale*100)/CurrentContracts Then ExitShort("sp2",AtStop,LL+(AvgEntryPrice-LL)*0.2); if CurrentContracts >= 5 and C <= HH-PriceScale*10 and C > AvgEntryPrice and (AvgEntryPrice-C) <= -(CurrentContracts*U)*PriceScale Then ExitShort("sl1"); if CurrentContracts >= 5 and ll <= AvgEntryPrice-(PriceScale*50)/CurrentContracts Then ExitShort("sl2",AtStop,AvgEntryPrice); } if MarketPosition == 1 then { if CurrentContracts > CurrentContracts[1] Then { hh = h; ll = l; } if h > hh Then hh = h; if l < ll Then ll = l; ExitLong("bp1",AtStop,AvgEntryPrice+(PriceScale*100)/CurrentContracts); if hh >= AvgEntryPrice+(PriceScale*100)/CurrentContracts Then ExitLong("bp2",AtStop,hh-(hh-AvgEntryPrice)*0.2); if CurrentContracts >= 5 and C >= LL+PriceScale*10 and C < AvgEntryPrice and (C-AvgEntryPrice) <= -(CurrentContracts*U)*PriceScale Then ExitLong("bl1"); if CurrentContracts >= 5 and hh >= AvgEntryPrice+(PriceScale*50)/CurrentContracts Then ExitLong("bl2",AtStop,AvgEntryPrice); } 즐거운 하루되세요 > 라떼처럼 님이 쓴 글입니다. > 제목 : 부탁드립니다. > 수식 부탁드립니다. 감사드립니다 1) 조건(아래 예시참조) 7시 30분 현재가가 기준가 A 이고 A 대비 10틱 상승하면 기준가가 A+10틱의 현재가가 기준가(A')로 변경되고 B=1 A'에서 다시 10틱 상승하면 A'+10틱의 현재가가 기준가로(A'') 변경되고 B=2, 기준가에서 추가 10틱 상승하면 기준가(A''')로 변경, B=3... 기준가는 10틱 변화된 현재가로 수시로 변하고 연속으로 상승될경우 B=1,2,3,4,5..로 변경 기준가 대비 연속 10틱 상승으로 B=1,2,3.. 되다가 기준가 대비 -10틱 되면 S=1로 변경, 다시 기준가 대비 10틱 상승하면 B=1 부터 다시 시작 기준가(10틱 변화후의 현재값) 대비 10틱 상승 하락하면 B,S가 1씩 증가하고 (1,2,3,4,5,..) 증가 중 한번이라도 역방향으로 하락 상승하면 B,S가 1부터 다시 시작하여 증가 *표시 B=1,2,3(빨간색).. S=1,2,3,,(파란색) 을 차트 캔들위에 표시해 주시길 요청드립니다. (단순 1,2,3,4이고 색깔만 다르게 표시) 2)진입 매도 : B=1일때 1개 매도, B=2일때 2개 매도, B=3 이상일때는 3개 매도 매수 : S=1일때 1개 매수, S=2일때 2개 매수, S=3 이상일때는 3개 매수 진입 수량은 매도 매수 각각 최대 N 개로 제한하고 싶습니다. 3)손절1: 매도일때 매도된 5개 총 수익이 마이너스 일때 최고가 대비 10틱이 하락 했을때 수익이 -(진입수량 * U(상수)) 값보다 작으면 청산되는 식을 부탁드립니다. *예시: 진입수5, 현재가 2000 (매도 5개총수익: -100틱), 현재가 2005 (수익: -150틱), <-- 최대값: 2005 현재가 1995(-10틱하락) (수익: -50틱) ==> -(진입수(5)*U(5))= -25틱 보다 작음 ==>손절(진입된 5개 모두 청산) * 매수는 반대로 해주세요 4)손절2: 진입된 매도 수량이 5개 이상이고 수익이 50틱 이상까지 갔다면 0틱으로 다시 되돌림 하면 손절(진입수량 모두 청산) * 매수는 반대로 해주세요 5)청산(두가지 부탁드립니다) 1)매도, 매수 포지션일때 진입된 수익 총합이 100틱이상이면 전부청산 2)매도, 배수 포지션일때 진입된 수익 총합이 100틱이상이면 최고수익대비 수익이 20%하락하면 전부 청산 1)조건 예시 7시 30분 현재가: A(기준가) A+10틱 ==> B=1 (A'=A+10틱 현재가) A'+10틱 ==> B=2 (A''=A'+10틱 현재가) A''+10틱 ==> B=3 (A'''=A''+10틱 현재가) A'''+10틱 ==> B=4 (A''''=A'''+10틱 현재가) A''''+10틱 ==> B=5 (A'''''=A''''+10틱 현재가) 지속.. A+10틱 ==> B=1 (A'=A+10틱 현재가) A'+10틱 ==> B=2 (A''=A'+10틱 현재가) A''-10틱 ==> S=1 (A'''=A''-10틱 현재가) A'''-10틱 ==> S=2 (A'''=A''-10틱 현재가) A''''-10틱 ==> S=3 (A''''=A'''-10틱 현재가) A'''''+10틱 ==> B=1 (A'''''=A''''+10틱 현재가) 감사합니다