커뮤니티
시스템식 부탁드립니다
2012-02-13 09:47:53
402
글번호 47643
공통조건(연결선물지수)
1) 2봉이후 진입
2)조건만족시 즉시실행
3)하루에 2회까지만 진입
4)2시10분이후 진입금지
매수: 2봉이후
진입조건:
1) (매수호가잔량-매도호가잔량)>700 and
2) 현재가 > 시초가 이면 2계약 진입
추가진입조건: 추가진입은 2분이 지나야 하며, 재 추가진입도 2분이 지나야함
1) 매수후 진입평균가대비 -0.6pt 또는 +0.6pt가 되면 추가 2계약 매수(2회까지 추가매수가능)
A) 첫번째 거래가 모두청산된 후에 다시 진입할때에는
진입조건은
1) (총매수잔량-총매도잔량)>2000 and
2) 현재가가 시초가대비 1.5pt 이상이어야 하며 and
3) 최근 6봉의 최고가가 돌파되면 2계약 진입
추가진입조건은 2분이 지나야 하며, 재 추가진입도 2분이 지나야함
(진입가대비 -0.6pt 빠지거나 +0.6pt상승시 2계약 추가진입(2회까지 가능))
청산조건: 공통조건
1) 진입가대비 1Pt수익시 50% 청산
2) 나머지는 진입평균가대비 지수가 -0.8pt아래로 떨어지지 않으면 trailingstop을
이용 수익대비 50%이하로 떨어지지 않으면 2시10분에 일괄청산
손절기준: 공통조건
1) 진입평균가대비 지수가 -1pt 또는
2) 현재가가 시초가 대비 -0.5pt 또는
3) (매수호가잔량 - 매도호가잔량) < 200
4) (매수호가잔량 - 매도호가잔량)차이가 최고대비 20%이하로 줄어들경우 또는
5) 최근 15봉의 최저가를 깰경우
매도 : 2봉이후
진입조건:
1) (매도호가잔량-매수호가잔량) > 700 and
2) 현재가 < 시초가 이면 2계약 매도
추가진입조건: 추가진입은 2분이 지나야 하며, 재 추가진입도 2분이 지나야함
1) 매도후 진입평균가대비 -0.6pt나 0.6pt에서 2계약 추가 매도(2회까지 추가진입가능)
A) 첫번째 거래가 모두청산된 후에 다시 진입할때에는
진입조건은
1) (총매도잔량-총매수잔량)>2000 and
2) 현재가가 시초가대비 -1.5pt 이하이어야 하며 and
3) 최근 6봉의 최저가가 이탈되면 2계약 진입
추가진입조건은 2분이 지나야 하며, 재 추가진입도 2분이 지나야함
(진입가대비 -0.6pt 빠지거나 +0.6pt상승시 2계약 추가진입(2회까지 가능))
청산조건: 공통조건
1) 진입평균가대비 +1pt수익시 50% 청산
2) 나머지는 진입평균가대비 지수가 +0.8pt이하라면 trailingstop이용
수익대비 50%이하로 떨어지지 않으면 2시10분에 일괄청산
손절기준: 공통조건
1) 진입평균가대비 지수가 +1pt 이상 상승시 또는
2) 현재가가 시초가 대비 +0.5pt 또는
3) (매도호가잔량 - 매수호가잔량) < 200 또는
4) (매도호가잔량 - 매수호가잔량)차이가 최고대비 20%이하로 줄어들경우 또는
5) 최근 15봉의 최고가를 돌파할경우
수식 부탁드립니다.
고맙습니다.
답변 1
예스스탁 예스스탁 답변
2012-02-13 14:13:38
안녕하세요
예스스탁입니다.
피라미딩을 다른진입신호만 허용으로 설정하시기고 적용하시기 바랍니다.
var : cnt(0),count(0);
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}
if dayindex+1 > 2 Then{
if count == 0 and MarketPosition == 0 and bids-asks >= 700 And C > dayopen Then
buy("b1",OnClose,def,2);
if count == 1 and MarketPosition == 0 and bids-asks >= 2000 And C >= dayopen+1.5 and crossup(c,highest(h,6)[1]) Then
buy("b2",OnClose,def,2);
}
if MarketPosition == 1 and stime >= 93000 and stime < 141000 Then{
if CurrentEntries == 1 Then{
buy("addbup1",AtStop,EntryPrice+0.6,2);
buy("addbdn1",Atlimit,EntryPrice-0.6,2);
}
if CurrentEntries == 2 Then{
if countif(highest(H,BarsSinceEntry) >= EntryPrice+0.6,BarsSinceEntry) >= 1 Then{
buy("addbup2-1",AtStop,EntryPrice+1.2,2);
buy("addbdn2-1",Atlimit,EntryPrice,2);
}
if countif(Lowest(L,BarsSinceEntry) <= EntryPrice-0.6, BarsSinceEntry) >= 1 Then{
buy("addbup2-2",AtStop,EntryPrice,2);
buy("addbdn2-2",Atlimit,EntryPrice-1.2,2);
}
}
}
if MarketPosition == 1 Then{
if countif(highest(h,BarsSinceEntry) < AvgEntryPrice+1,BarsSinceEntry) < 1 Then
exitlong("bx1",AtLimit,AvgEntryPrice+1,"",int(maxContracts*0.5),1);
if countif(Lowest(L,BarsSinceEntry) > AvgEntryPrice-0.8,BarsSinceEntry) < 1 Then
ExitLong("bx2",AtStop,highest(h,BarsSinceEntry)-(highest(h,BarsSinceEntry)-EntryPrice)*0.5,"",int(maxContracts*0.5),1);
}
if MarketPosition == 1 Then{
if bids-asks < 200 Then
exitlong("xb1");
if bids-asks <= highest(bids-asks,BarsSinceEntry)*0.8 Then
exitlong("xb2");
exitlong("xb3",AtStop,lowest(L,15)-PriceScale);
exitlong("xb4",AtStop,AvgEntryPrice-1);
exitlong("xb5",AtStop,dayopen-0.5);
}
if dayindex+1 > 2 Then{
if count == 0 and MarketPosition == 0 and asks-bids > 700 And C < dayopen Then
sell("s1",OnClose,def,2);
if count == 1 and MarketPosition == 0 and asks-bids > 2000 And C <= dayopen-1.5 and CrossDown(c,lowest(L,6)[1]) Then
Sell("s2",OnClose,def,2);
}
if MarketPosition == 1 and stime >= 93000 and stime < 141000 Then{
if CurrentEntries == 1 Then{
sell("addsup1",AtStop,EntryPrice-0.6,2);
sell("addsdn1",Atlimit,EntryPrice+0.6,2);
}
if CurrentEntries == 2 Then{
if countif(Lowest(L,BarsSinceEntry) <= EntryPrice-0.6,BarsSinceEntry) >= 1 Then{
sell("addsup2-1",AtStop,EntryPrice-1.2,2);
sell("addsdn2-1",Atlimit,EntryPrice,2);
}
if countif(Highest(H,BarsSinceEntry) >= EntryPrice+0.6, BarsSinceEntry) >= 1 Then{
sell("addsup2-2",AtStop,EntryPrice,2);
sell("addsdn2-2",Atlimit,EntryPrice+1.2,2);
}
}
}
if MarketPosition == -1 Then{
if countif(Lowest(L,BarsSinceEntry) > AvgEntryPrice-1,BarsSinceEntry) < 1 Then
ExitShort("sx1",AtLimit,AvgEntryPrice-1,"",int(maxContracts*0.5),1);
if countif(highest(H,BarsSinceEntry) < AvgEntryPrice+0.8,BarsSinceEntry) < 1 Then
ExitShort("sx2",AtStop,Lowest(L,BarsSinceEntry)+(EntryPrice-Lowest(L,BarsSinceEntry))*0.5,"",int(maxContracts*0.5),1);
}
if MarketPosition == -1 Then{
if Asks-bids < 200 Then
ExitShort("xs1");
if asks-bids <= highest(asks-Bids,BarsSinceEntry)*0.8 Then
ExitShort("xs2");
ExitShort("xs3",AtStop,Highest(H,15)+PriceScale);
ExitShort("xs4",AtStop,AvgEntryPrice+1);
ExitShort("xs5",AtStop,dayopen+0.5);
}
즐거운 하루되세요
> 알찬투자 님이 쓴 글입니다.
> 제목 : 시스템식 부탁드립니다
> 공통조건(연결선물지수)
1) 2봉이후 진입
2)조건만족시 즉시실행
3)하루에 2회까지만 진입
4)2시10분이후 진입금지
매수: 2봉이후
진입조건:
1) (매수호가잔량-매도호가잔량)>700 and
2) 현재가 > 시초가 이면 2계약 진입
추가진입조건: 추가진입은 2분이 지나야 하며, 재 추가진입도 2분이 지나야함
1) 매수후 진입평균가대비 -0.6pt 또는 +0.6pt가 되면 추가 2계약 매수(2회까지 추가매수가능)
A) 첫번째 거래가 모두청산된 후에 다시 진입할때에는
진입조건은
1) (총매수잔량-총매도잔량)>2000 and
2) 현재가가 시초가대비 1.5pt 이상이어야 하며 and
3) 최근 6봉의 최고가가 돌파되면 2계약 진입
추가진입조건은 2분이 지나야 하며, 재 추가진입도 2분이 지나야함
(진입가대비 -0.6pt 빠지거나 +0.6pt상승시 2계약 추가진입(2회까지 가능))
청산조건: 공통조건
1) 진입가대비 1Pt수익시 50% 청산
2) 나머지는 진입평균가대비 지수가 -0.8pt아래로 떨어지지 않으면 trailingstop을
이용 수익대비 50%이하로 떨어지지 않으면 2시10분에 일괄청산
손절기준: 공통조건
1) 진입평균가대비 지수가 -1pt 또는
2) 현재가가 시초가 대비 -0.5pt 또는
3) (매수호가잔량 - 매도호가잔량) < 200
4) (매수호가잔량 - 매도호가잔량)차이가 최고대비 20%이하로 줄어들경우 또는
5) 최근 15봉의 최저가를 깰경우
매도 : 2봉이후
진입조건:
1) (매도호가잔량-매수호가잔량) > 700 and
2) 현재가 < 시초가 이면 2계약 매도
추가진입조건: 추가진입은 2분이 지나야 하며, 재 추가진입도 2분이 지나야함
1) 매도후 진입평균가대비 -0.6pt나 0.6pt에서 2계약 추가 매도(2회까지 추가진입가능)
A) 첫번째 거래가 모두청산된 후에 다시 진입할때에는
진입조건은
1) (총매도잔량-총매수잔량)>2000 and
2) 현재가가 시초가대비 -1.5pt 이하이어야 하며 and
3) 최근 6봉의 최저가가 이탈되면 2계약 진입
추가진입조건은 2분이 지나야 하며, 재 추가진입도 2분이 지나야함
(진입가대비 -0.6pt 빠지거나 +0.6pt상승시 2계약 추가진입(2회까지 가능))
청산조건: 공통조건
1) 진입평균가대비 +1pt수익시 50% 청산
2) 나머지는 진입평균가대비 지수가 +0.8pt이하라면 trailingstop이용
수익대비 50%이하로 떨어지지 않으면 2시10분에 일괄청산
손절기준: 공통조건
1) 진입평균가대비 지수가 +1pt 이상 상승시 또는
2) 현재가가 시초가 대비 +0.5pt 또는
3) (매도호가잔량 - 매수호가잔량) < 200 또는
4) (매도호가잔량 - 매수호가잔량)차이가 최고대비 20%이하로 줄어들경우 또는
5) 최근 15봉의 최고가를 돌파할경우
수식 부탁드립니다.
고맙습니다.
다음글