커뮤니티
수고많으십니다.
2011-08-23 23:59:32
610
글번호 42162
질문 1.
var:q(0);
q=data3(c)-data4(c);
이러한 변수로 리버스 시스템 작성 부탁합니다.(exitlong, exitshort 없음)
1. 첫번째 진입 : q >= 30 일 때 매수진입, else q<30 일 때 매도진입
2. 두번째 진입
- 현재 포지션 매도인 경우 : 장 시작부터 현재까지 q의 최저값 대비 q의 현재값이
80 이상 (q-최저값>=80)될 때 매도청산 및 매수진입.
- 현재 포지션 매수인 경우: 장 시작부터 현재까지 q의 최고값 대비 q의 현재값이
80 이하 (최고값 - q >=80) 될 때 매수청산 및 매도진입.
3. 세 번째 이상 진입
- 현재 포지션이 매수일 경우 : 현 포지션(매수) 진입 이후(진입한 캔들포함)
q의 최고값 대비 현재값이 80 이하(진입후 최고값 - q >=80) 될 때 매수청산
및 매도진입
- 현재 포지션이 매도일 경우 : 현 포지션(매도) 진입 이후(진입한 캔들포함)
q의 최저값 대비 현재값이 80 이상(q - 진입 후 최저값 >=80 )될 때 매수 진입
* 두 번째와 세 번째 이상의 진입은 사실상 조건이 같은데 이전 최고, 최저값을 카운팅하는 시점만 다릅니다.
질문 2.
복수의 조건이 있을 때, 가령 ‘1. 이평 골든크로스 후 2. 단기이평 위에서 매수하고, 데드크로스나 캔들이 단기이평 아래로 가면 청산’이라고 한 경우, 캔들 진행 상 골든크로스는 유지 중이나 캔들이 단기이평 아래로 가서 청산하였는데, 재차 캔들이 단기이평 위로 올라와도 재매수 신호가 안나오는데 이를 나오게 하는 시스템식.
질문3.
지표식의 noplot처름 신호가 나오는 조건이더라도 skip할 수는 없는지요?
답변 2
예스스탁 예스스탁 답변
2011-08-24 09:51:58
안녕하세요
예스스탁입니다.
1.
var:q(0);
q=data3(c)-data4(c);
if crossup(q,30) Then
buy();
if CrossDown(q,30) Then
Sell();
if MarketPosition == -1 and crossup(q,lowest(q,dayindex+1)+80) Then
buy();
if MarketPosition == 1 and crossup(q,highest(q,dayindex+1)-80) Then
sell();
if MarketPosition == 1 and CrossDown(q,Highest(q,BarsSinceEntry+1)-80) Then
sell();
if MarketPosition == -1 and CrossUp(q,Lowest(q,BarsSinceEntry+1)+80) Then
buy();
2.
if crossup(ma(c,5),ma(C,20)) Then
var1 = 1;
if CrossDown(ma(c,5),ma(C,20)) Then
var1 = -1;
if var1 == 1 and crossup(c,ma(c,5)) Then
buy();
if CrossDown(c,ma(c,5)) Then
exitlong();
4.
따로 신호에 대해 skip하는 함수는 없습니다.
조건에 맞춰 if문으로 구현해야 합니다.
즐거운 하루되세요
> 가람봉 님이 쓴 글입니다.
> 제목 : 수고많으십니다.
> 질문 1.
var:q(0);
q=data3(c)-data4(c);
이러한 변수로 리버스 시스템 작성 부탁합니다.(exitlong, exitshort 없음)
1. 첫번째 진입 : q >= 30 일 때 매수진입, else q<30 일 때 매도진입
2. 두번째 진입
- 현재 포지션 매도인 경우 : 장 시작부터 현재까지 q의 최저값 대비 q의 현재값이
80 이상 (q-최저값>=80)될 때 매도청산 및 매수진입.
- 현재 포지션 매수인 경우: 장 시작부터 현재까지 q의 최고값 대비 q의 현재값이
80 이하 (최고값 - q >=80) 될 때 매수청산 및 매도진입.
3. 세 번째 이상 진입
- 현재 포지션이 매수일 경우 : 현 포지션(매수) 진입 이후(진입한 캔들포함)
q의 최고값 대비 현재값이 80 이하(진입후 최고값 - q >=80) 될 때 매수청산
및 매도진입
- 현재 포지션이 매도일 경우 : 현 포지션(매도) 진입 이후(진입한 캔들포함)
q의 최저값 대비 현재값이 80 이상(q - 진입 후 최저값 >=80 )될 때 매수 진입
* 두 번째와 세 번째 이상의 진입은 사실상 조건이 같은데 이전 최고, 최저값을 카운팅하는 시점만 다릅니다.
질문 2.
복수의 조건이 있을 때, 가령 ‘1. 이평 골든크로스 후 2. 단기이평 위에서 매수하고, 데드크로스나 캔들이 단기이평 아래로 가면 청산’이라고 한 경우, 캔들 진행 상 골든크로스는 유지 중이나 캔들이 단기이평 아래로 가서 청산하였는데, 재차 캔들이 단기이평 위로 올라와도 재매수 신호가 안나오는데 이를 나오게 하는 시스템식.
질문3.
지표식의 noplot처름 신호가 나오는 조건이더라도 skip할 수는 없는지요?
예스스탁 예스스탁 답변
2011-08-24 16:09:17
var:q(0),count(0),cnt(0);
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}
q=data3(c)-data4(c);
if count == 0 then{#당일 첫번째 진입
if crossup(q,30) Then
buy();
if CrossDown(q,30) Then
Sell();
}
if count == 1 then{#당일 두번째 진입
if MarketPosition == -1 and crossup(q,lowest(q,dayindex+1)+80) Then
buy();
if MarketPosition == 1 and crossup(q,highest(q,dayindex+1)-80) Then
sell();
}
if count >= 2 Then{#당일 세번째 진입부터
if MarketPosition == 1 and CrossDown(q,Highest(q,BarsSinceEntry+1)-80) Then
sell();
if MarketPosition == -1 and CrossUp(q,Lowest(q,BarsSinceEntry+1)+80) Then
buy();
}
즐거운 하루되세요
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수고많으십니다.
> 안녕하세요
예스스탁입니다.
1.
var:q(0);
q=data3(c)-data4(c);
if crossup(q,30) Then
buy();
if CrossDown(q,30) Then
Sell();
if MarketPosition == -1 and crossup(q,lowest(q,dayindex+1)+80) Then
buy();
if MarketPosition == 1 and crossup(q,highest(q,dayindex+1)-80) Then
sell();
if MarketPosition == 1 and CrossDown(q,Highest(q,BarsSinceEntry+1)-80) Then
sell();
if MarketPosition == -1 and CrossUp(q,Lowest(q,BarsSinceEntry+1)+80) Then
buy();
2.
if crossup(ma(c,5),ma(C,20)) Then
var1 = 1;
if CrossDown(ma(c,5),ma(C,20)) Then
var1 = -1;
if var1 == 1 and crossup(c,ma(c,5)) Then
buy();
if CrossDown(c,ma(c,5)) Then
exitlong();
4.
따로 신호에 대해 skip하는 함수는 없습니다.
조건에 맞춰 if문으로 구현해야 합니다.
즐거운 하루되세요
> 가람봉 님이 쓴 글입니다.
> 제목 : 수고많으십니다.
> 질문 1.
var:q(0);
q=data3(c)-data4(c);
이러한 변수로 리버스 시스템 작성 부탁합니다.(exitlong, exitshort 없음)
1. 첫번째 진입 : q >= 30 일 때 매수진입, else q<30 일 때 매도진입
2. 두번째 진입
- 현재 포지션 매도인 경우 : 장 시작부터 현재까지 q의 최저값 대비 q의 현재값이
80 이상 (q-최저값>=80)될 때 매도청산 및 매수진입.
- 현재 포지션 매수인 경우: 장 시작부터 현재까지 q의 최고값 대비 q의 현재값이
80 이하 (최고값 - q >=80) 될 때 매수청산 및 매도진입.
3. 세 번째 이상 진입
- 현재 포지션이 매수일 경우 : 현 포지션(매수) 진입 이후(진입한 캔들포함)
q의 최고값 대비 현재값이 80 이하(진입후 최고값 - q >=80) 될 때 매수청산
및 매도진입
- 현재 포지션이 매도일 경우 : 현 포지션(매도) 진입 이후(진입한 캔들포함)
q의 최저값 대비 현재값이 80 이상(q - 진입 후 최저값 >=80 )될 때 매수 진입
* 두 번째와 세 번째 이상의 진입은 사실상 조건이 같은데 이전 최고, 최저값을 카운팅하는 시점만 다릅니다.
질문 2.
복수의 조건이 있을 때, 가령 ‘1. 이평 골든크로스 후 2. 단기이평 위에서 매수하고, 데드크로스나 캔들이 단기이평 아래로 가면 청산’이라고 한 경우, 캔들 진행 상 골든크로스는 유지 중이나 캔들이 단기이평 아래로 가서 청산하였는데, 재차 캔들이 단기이평 위로 올라와도 재매수 신호가 안나오는데 이를 나오게 하는 시스템식.
질문3.
지표식의 noplot처름 신호가 나오는 조건이더라도 skip할 수는 없는지요?