예스스탁
예스스탁 답변
2022-02-14 09:53:02
안녕하세요
예스스탁입니다.
input : ATRP1(4),n(2),ATRP2(10),x(5);
var : TH(0),TL(0),cnt(0),sumTR1(0),ATRV1(0),sumTR2(0),ATRV2(0),entry(0);
sumTR1 = 0;
for cnt = 0 to max(ATRP1,ATRP2)-1
{
If DayClose(cnt+1) > DayHigh(cnt) then
TH = DayClose(cnt+1);
else
TH = DayHigh(cnt);
If DayClose(cnt+1) < daylow(cnt) then
TL = DayClose(cnt+1);
else
TL = daylow(cnt);
if cnt < ATRP1 Then
sumTR1 = sumTR1 + (TH-TL);
if cnt < ATRP2 Then
sumTR1 = sumTR2 + (TH-TL);
}
ATRV1 = sumTR1/ATRP1;
ATRV2 = sumTR2/ATRP2;
if Bdate != Bdate[1] then
entry = 0;
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
if MarketPosition <= 0 and h < dayopen+ATRV1*n and entry < 1 Then
Buy("b",AtStop,DayOpen+ATRV1*n);
if MarketPosition >= 0 and L > dayopen-ATrv1*n and entry < 1 Then
Sell("s",AtStop,DayOpen-ATRV1*n);
if MarketPosition == 1 Then
{
ExitLong("btr",AtStop,Highest(H,BarsSinceEntry)-ATRV2*x);
ExitLong("bp",AtLimit,EntryPrice+abs(EntryPrice-DayOpen)*4);
if (NextBarSdate != sDate and NextBarStime >= 80000) or
(NextBarSdate == sDate and NextBarStime >= 80000 and sTime < 80000) Then
ExitLong("bx",AtMarket);
}
if MarketPosition == -1 Then
{
ExitShort("str",AtStop,Lowest(L,BarsSinceEntry)+ATRV2*x);
ExitShort("sp",AtLimit,EntryPrice-abs(EntryPrice-DayOpen)*4);
if (NextBarSdate != sDate and NextBarStime >= 80000) or
(NextBarSdate == sDate and NextBarStime >= 80000 and sTime < 80000) Then
ExitShort("sx",AtMarket);
}
즐거운 하루되세요
> 고요하다 님이 쓴 글입니다.
> 제목 : 해선 당일매매 시스템식 부탁드립니다
> 안녕하세요.
해외선물 시스템식 부탁드립니다.
(일자기준) 한국시간 08시 ~ 차일 07시
(대상봉) 5분봉
(진입기준) 당일 시가 + (일봉기준-ATR(4)) * 2 돌파시 매수
당일 시가 - (일봉기준-ATR(4)) * 2 돌파시 매도
(청산기준) 매수 => 진입 후 고점 - 일봉기준 ATR(10) * 5
매도 => 진입 후 저점 + 일봉기준 ATR(10) * 5
(강제익절) 매수 => 시가와 매수가의 폭(매수가 -시가)의 4배수 상승시 청산 // 매도는 반대
(타임컷) 다음날 첫 봉 (08시)에 청산
(기타) 하루 1번만 매매
미리 감사드립니다.