커뮤니티
시스템 질문
2016-09-07 15:01:24
122
글번호 101775
참조 데이터를 이용하려고 하는데,
1. 틱차트 상 (i) 75 지수이평선 위에 있고, (ii) Slow stochastic이 20 cross-up 하면서 (iii) 5분봉 차트상 75 지수이평선 위에 있으면 매수
2. 틱차트 상 (i) 75 지수이평선 아래에 있고, (ii) Slow stochastic이 80 cross-down 하면서 (iii) 5분봉 차트상 75 지수이평선 아래에 있으면 매도
3. stochastic이 80 crossdown하면 매수 청산, 20 cross-up 하면 매도청산
4. stop은 5분봉 차트상 10틱이상 올라가거나 내려가는 경우 stop 주문
답변 2
예스스탁 예스스탁 답변
2016-09-08 18:05:28
안녕하세요
예스스탁입니다.
참조데이터를 봉완성시로만 가능합니다.
5분봉 참조데이터를 이용해야 하는데 atstop등으로 구현되지 않습니다.
#기본종목 틱주기
#참조데이터 data2 분주기
input : sto1(10),sto2(5),sto3(5),P(75);
var : ema1(0,data1),stok1(0,data2),stod1(0,data2),ema2(0,data2);
var : d2c(0);
ema1 = data1(ema(C,P));
stok1 = data1(StochasticsK(sto1,sto2));
stod1 = data1(StochasticsD(sto1,sto2,sto3));
ema2 = data3(ema(C,P));
D2C = data2(c);
if data1(C > ema1) and data1(crossup(stok1,20)) and data2(C>ema2) Then
buy();
if data1(C < ema1) and data1(CrossDown(stok1,80)) and data2(C<ema2) Then
sell();
if MarketPosition == 1 Then{
if data1(CrossDown(stok1,80)) Then
exitlong("bx1");
if data2(C) <= D2C[BarsSinceEntry]-PriceScale*10 Then
ExitLong("bx2");
}
if MarketPosition == -1 Then{
if data1(Crossup(stok1,20)) Then
ExitShort("sx1");
if data2(C) >= D2C[BarsSinceEntry]+PriceScale*10 Then
ExitShort("sx2");
}
즐거운 하루되세요
> aaaaa 님이 쓴 글입니다.
> 제목 : 시스템 질문
> 참조 데이터를 이용하려고 하는데,
1. 틱차트 상 (i) 75 지수이평선 위에 있고, (ii) Slow stochastic이 20 cross-up 하면서 (iii) 5분봉 차트상 75 지수이평선 위에 있으면 매수
2. 틱차트 상 (i) 75 지수이평선 아래에 있고, (ii) Slow stochastic이 80 cross-down 하면서 (iii) 5분봉 차트상 75 지수이평선 아래에 있으면 매도
3. stochastic이 80 crossdown하면 매수 청산, 20 cross-up 하면 매도청산
4. stop은 5분봉 차트상 10틱이상 올라가거나 내려가는 경우 stop 주문
aaaaa
2016-09-09 02:20:08
말씀하신대로 기본종목 틱주기, 참조데이터 data2 분주기로 하고 시스템 실행하려고 하면 "수식에서 참조할 첫번쨰 종목데이터가 없습니다"라는 메시지가 뜹니다.
그래서 참조데이터 data2를 틱주기, data3을 분주기로 해 보니 진입해야 할 곳에 진입이 없고 원했던 것도 아닌 것 같네요.
어떻게 해야 하나요?
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 시스템 질문
> 안녕하세요
예스스탁입니다.
참조데이터를 봉완성시로만 가능합니다.
5분봉 참조데이터를 이용해야 하는데 atstop등으로 구현되지 않습니다.
#기본종목 틱주기
#참조데이터 data2 분주기
input : sto1(10),sto2(5),sto3(5),P(75);
var : ema1(0,data1),stok1(0,data2),stod1(0,data2),ema2(0,data2);
var : d2c(0);
ema1 = data1(ema(C,P));
stok1 = data1(StochasticsK(sto1,sto2));
stod1 = data1(StochasticsD(sto1,sto2,sto3));
ema2 = data3(ema(C,P));
D2C = data2(c);
if data1(C > ema1) and data1(crossup(stok1,20)) and data2(C>ema2) Then
buy();
if data1(C < ema1) and data1(CrossDown(stok1,80)) and data2(C<ema2) Then
sell();
if MarketPosition == 1 Then{
if data1(CrossDown(stok1,80)) Then
exitlong("bx1");
if data2(C) <= D2C[BarsSinceEntry]-PriceScale*10 Then
ExitLong("bx2");
}
if MarketPosition == -1 Then{
if data1(Crossup(stok1,20)) Then
ExitShort("sx1");
if data2(C) >= D2C[BarsSinceEntry]+PriceScale*10 Then
ExitShort("sx2");
}
즐거운 하루되세요
> aaaaa 님이 쓴 글입니다.
> 제목 : 시스템 질문
> 참조 데이터를 이용하려고 하는데,
1. 틱차트 상 (i) 75 지수이평선 위에 있고, (ii) Slow stochastic이 20 cross-up 하면서 (iii) 5분봉 차트상 75 지수이평선 위에 있으면 매수
2. 틱차트 상 (i) 75 지수이평선 아래에 있고, (ii) Slow stochastic이 80 cross-down 하면서 (iii) 5분봉 차트상 75 지수이평선 아래에 있으면 매도
3. stochastic이 80 crossdown하면 매수 청산, 20 cross-up 하면 매도청산
4. stop은 5분봉 차트상 10틱이상 올라가거나 내려가는 경우 stop 주문