커뮤니티
문의드립니다
2016-05-16 14:38:40
97
글번호 98097
문의에 작성 하여주신 수식 감사합니다.
수정 하여주신후 데이터1에서의 이익실현이 다시 작동 하지 않고 손절부분은 아직 작동이 않되어서 다시 문의 드립니다.
지난번 답변 부분에서 손절 참조가 데이터1에서 데이터 2,3 으로 변경 하여 주셨다고 하셨습니다.
데이터1기준 이익실현/ 데이터2,3기준으로 손절
다시 한번 부탁드리겠습니다.
요청사항:
참조데이터2,3 input 변수값 기준 5틱으로 손절이 되었으면합니다.
수고하세요...감사합니다.
아래는 지난번 수정 하여주신 수식입니다.
input : AA(100),BB(100),수량2(1),수량3(1);
var : dncnt2(0,data2),d2(0,data2),dncnt3(0,data3),D3(0,data3);
var : V2(0,data2),V3(0,data2);
# data2 날짜변경되면 초기화
if data2(date != date[1]) Then
dncnt2 = 0;
#data2의 종가가 AA값을 하향이탈하면
if data2(CrossDown(C,AA)) Then{
#카운트
dncnt2 = dncnt2+1;
#3번째부터 5번째까지 매도진입
if dncnt2 >= 3 and dncnt2 <= 5 and stime < 143000 Then{
sell("s1",OnClose,def,수량2);
D2 = data2(c);
}
}
# dat32 날짜변경되면 초기화
if data3(date != date[1]) Then
dncnt3 = 0;
#data3의 종가가 BB값을 하향이탈하면
if data3(CrossDown(C,BB)) Then{
#카운트
dncnt3 = dncnt3+1;
#4번째부터 5번째까지 매도진입
if dncnt3 >= 4 and dncnt3 <= 5 and stime < 143000 Then{
sell("s2",OnClose,def,수량3);
D3 = data3(c);
}
}
if MarketPosition == -1 Then{
#평단가 대비 9틱 수익손실시 최대진입수량의 1/3 청산
if countif(LatestExitName(0) == "sp1",BarsSinceEntry) < 1 Then
ExitShort("sp1",atlimit,AvgEntryPrice-PriceScale*9,"",max(1,floor(MaxContracts*(1/3))),1);
#평단가 대비 17틱 수익손실시 최대진입수량의 1/3 청산
if countif(LatestExitName(0) == "sp2",BarsSinceEntry) < 1 Then
ExitShort("sp2",atlimit,AvgEntryPrice-PriceScale*17,"",max(1,floor(MaxContracts*(1/3))),1);
#평단가 대비 20틱 수익손실시 최대진입수량의 1/3 청산
if countif(LatestExitName(0) == "sp3",BarsSinceEntry) < 1 Then
ExitShort("sp3",atlimit,AvgEntryPrice-PriceScale*20);
#data2의 종가가 최근 진입당시 data2의 종가보다 10틱 반대로 가면 s1진입 모두 청산
if data2(c) >= AA+data2(PriceScale*5) Then
ExitShort("sx1",OnClose,def,"s1");
#data3의 종가가 최근 진입당시 data3의 종가보다 10틱 반대로 가면 s2진입 모두 청산
if data3(c) >= BB+data3(PriceScale*5) Then
ExitShort("sx2",OnClose,def,"s2");
}
SetStopEndofday(143000);
답변 1
예스스탁 예스스탁 답변
2016-05-16 18:41:03
> leezard 님이 쓴 글입니다.
> 제목 : 문의드립니다
> 문의에 작성 하여주신 수식 감사합니다.
수정 하여주신후 데이터1에서의 이익실현이 다시 작동 하지 않고 손절부분은 아직 작동이 않되어서 다시 문의 드립니다.
지난번 답변 부분에서 손절 참조가 데이터1에서 데이터 2,3 으로 변경 하여 주셨다고 하셨습니다.
데이터1기준 이익실현/ 데이터2,3기준으로 손절
다시 한번 부탁드리겠습니다.
요청사항:
참조데이터2,3 input 변수값 기준 5틱으로 손절이 되었으면합니다.
수고하세요...감사합니다.
아래는 지난번 수정 하여주신 수식입니다.
input : AA(100),BB(100),수량2(1),수량3(1);
var : dncnt2(0,data2),d2(0,data2),dncnt3(0,data3),D3(0,data3);
var : V2(0,data2),V3(0,data2);
# data2 날짜변경되면 초기화
if data2(date != date[1]) Then
dncnt2 = 0;
#data2의 종가가 AA값을 하향이탈하면
if data2(CrossDown(C,AA)) Then{
#카운트
dncnt2 = dncnt2+1;
#3번째부터 5번째까지 매도진입
if dncnt2 >= 3 and dncnt2 <= 5 and stime < 143000 Then{
sell("s1",OnClose,def,수량2);
D2 = data2(c);
}
}
# dat32 날짜변경되면 초기화
if data3(date != date[1]) Then
dncnt3 = 0;
#data3의 종가가 BB값을 하향이탈하면
if data3(CrossDown(C,BB)) Then{
#카운트
dncnt3 = dncnt3+1;
#4번째부터 5번째까지 매도진입
if dncnt3 >= 4 and dncnt3 <= 5 and stime < 143000 Then{
sell("s2",OnClose,def,수량3);
D3 = data3(c);
}
}
if MarketPosition == -1 Then{
#평단가 대비 9틱 수익손실시 최대진입수량의 1/3 청산
if countif(LatestExitName(0) == "sp1",BarsSinceEntry) < 1 Then
ExitShort("sp1",atlimit,AvgEntryPrice-PriceScale*9,"",max(1,floor(MaxContracts*(1/3))),1);
#평단가 대비 17틱 수익손실시 최대진입수량의 1/3 청산
if countif(LatestExitName(0) == "sp2",BarsSinceEntry) < 1 Then
ExitShort("sp2",atlimit,AvgEntryPrice-PriceScale*17,"",max(1,floor(MaxContracts*(1/3))),1);
#평단가 대비 20틱 수익손실시 최대진입수량의 1/3 청산
if countif(LatestExitName(0) == "sp3",BarsSinceEntry) < 1 Then
ExitShort("sp3",atlimit,AvgEntryPrice-PriceScale*20);
#data2의 종가가 최근 진입당시 data2의 종가보다 10틱 반대로 가면 s1진입 모두 청산
if data2(c) >= AA+data2(PriceScale*5) Then
ExitShort("sx1",OnClose,def,"s1");
#data3의 종가가 최근 진입당시 data3의 종가보다 10틱 반대로 가면 s2진입 모두 청산
if data3(c) >= BB+data3(PriceScale*5) Then
ExitShort("sx2",OnClose,def,"s2");
}
SetStopEndofday(143000);