커뮤니티
문의드려요 ~
2014-07-29 15:06:21
140
글번호 77195
1. 장시작후 참조데이타의 이평선이 왜곡?되어 시작하는데.. 어제까지의 데이타는 무시하고 오늘09시00초부터의 데이타만 이용한 참조데이타(data2)의 가중이평(3/5/20/60)과 단순이평(3/5/20/60)식을 부탁드립니다.
2. 참조데이타2(지수, 옵션)의 5가중이평과 20가중이평의 수치가 5이상 차이날때랑 5가중이평과 60가중이평이 10이상차이날때를 색구분이나 선을통해서 표시할수 있을까요?
3. 참조데이타2의 가중이평 매매식 부탁드립니다.
5가중이평이 20가중이평을 상향돌파하면 매수 하향돌파하면 매도
4. 참조2의 5가중이평이 상승턴하면 매수 하락턴하면 매도
5. 참조데이타2의 캔들이 20과 60 가중이평에 양봉(도지 등 각종 꼬리캔들포함)으로 닿으면(선물의 경우 +- 2틱오차, 옵션의경우 +-1오차 허용) 매도신호와 함께 소리(기본소리말고 매수, 매도 이렇게되나요?)로 알려줬으면 좋겠습니다.
반대로 참조2의 캔들이 20과 60 가중이평에 음봉(도지등 각종 꼬리캔들포함)으로 닿으면 (선물의경우+- 2틱 오차, 옵션의경우 +-1오차 허용) 매수신호와 함께 소리로 알려주면 좋겠습니다.
수고하세요^^
답변 1
예스스탁 예스스탁 답변
2014-07-29 17:43:11
안녕하세요
예스스탁입니다.
1.
Input : P1(3),P2(5),P3(20),P4(60);
Var : ma1(0,data2),ma2(0,data2),ma3(0,data2),ma4(0,data2);
Var : mav1(0,data2),mav2(0,data2),mav3(0,data2),mav4(0,data2);
Var : wma1(0,data2),wma2(0,data2),wma3(0,data2),wma4(0,data2);
Var : wmav1(0,data2),wmav2(0,data2),wmav3(0,data2),wmav4(0,data2);
var : v1(0,data2),v2(0,data2),C2(0,data2);
var : TF(0,data2),sum(0,data2),idx(0,data2);
var : CSum(0,data2),sum1(0,data2),cnt(0,data2);
C2 = data2(c);
ma1 = data2(ma(c,P1));
ma2 = data2(ma(c,P2));
ma3 = data2(ma(c,P3));
ma4 = data2(ma(c,P4));
wma1 = data2(wma(c,P1));
wma2 = data2(wma(c,P2));
wma3 = data2(wma(c,P3));
wma4 = data2(wma(c,P4));
if data2(date != date[1]) Then{
sum = 0;
idx = 0;
}
sum = sum + data2(c);
idx = idx+1;
v1 = sum/idx;
if idx < P1 Then
mav1 = v1;
Else
mav1 = ma1;
if idx < P2 Then
mav2 = v1;
Else
mav2 = ma2;
if idx < P3 Then
mav3 = v1;
Else
mav3 = ma3;
if idx < P4 Then
mav4 = v1;
Else
mav4 = ma4;
Sum1 = 0;
CSum = 0;
For cnt = 0 To idx-1 {
Sum1 = Sum1 + C2[cnt] * (idx - cnt);
CSum = CSum + idx - cnt;
}
If CSum > 0 Then
v2 = Sum1 / CSum;
Else
v2 = 0;
if idx < P1 Then
wmav1 = v2;
Else
wmav1 = wma1;
if idx < P2 Then
wmav2 = v2;
Else
wmav2 = wma2;
if idx < P3 Then
wmav3 = v2;
Else
wmav3 = wma3;
if idx < P4 Then
wmav4 = v2;
Else
wmav4 = wma4;
plot1(mav1,"당일단순이평1");
plot2(mav2,"당일단순이평2");
plot3(mav3,"당일단순이평3");
plot4(mav4,"당일단순이평4");
plot5(wmav1,"당일가중이평1");
plot6(wmav2,"당일가중이평2");
plot7(wmav3,"당일가중이평3");
plot8(wmav4,"당일가중이평4");
2.
Input : P1(5),P2(20);
Var : wma1(0,data2),wma2(0,data2);
Var : wmav1(0,data2),wmav2(0,data2);
var : v2(0,data2),C2(0,data2),idx(0,data2);
var : CSum(0,data2),sum1(0,data2),cnt(0,data2);
C2 = data2(c);
wma1 = data2(wma(c,P1));
wma2 = data2(wma(c,P2));
if data2(date != date[1]) Then{
idx = 0;
}
idx = idx+1;
Sum1 = 0;
CSum = 0;
For cnt = 0 To idx-1 {
Sum1 = Sum1 + C2[cnt] * (idx - cnt);
CSum = CSum + idx - cnt;
}
If CSum > 0 Then
v2 = Sum1 / CSum;
Else
v2 = 0;
if idx < P1 Then
wmav1 = v2;
Else
wmav1 = wma1;
if idx < P2 Then
wmav2 = v2;
Else
wmav2 = wma2;
if abs(wmav1-wmav2) < 5 then{//차이가 5미만
plot1(wmav1,"당일가중이평1",Black);
plot2(wmav2,"당일가중이평2",BLACK);
}
else if abs(wmav1-wmav2) >= 5 and abs(wmav1-wmav2) >= 10 then{#차이가 5~10
plot1(wmav1,"당일가중이평1",BLUE);
plot2(wmav2,"당일가중이평2",BLUE);
}
Else if abs(wmav1-wmav2) >= 10 then{#차이가 10이상
plot1(wmav1,"당일가중이평1",RED);
plot2(wmav2,"당일가중이평2",RED);
}
3.
Input : P1(5),P2(20);
Var : wma1(0,data2),wma2(0,data2);
Var : wmav1(0,data2),wmav2(0,data2);
var : v2(0,data2),C2(0,data2),idx(0,data2);
var : CSum(0,data2),sum1(0,data2),cnt(0,data2);
C2 = data2(c);
wma1 = data2(wma(c,P1));
wma2 = data2(wma(c,P2));
if data2(date != date[1]) Then{
idx = 0;
}
idx = idx+1;
Sum1 = 0;
CSum = 0;
For cnt = 0 To idx-1 {
Sum1 = Sum1 + C2[cnt] * (idx - cnt);
CSum = CSum + idx - cnt;
}
If CSum > 0 Then
v2 = Sum1 / CSum;
Else
v2 = 0;
if idx < P1 Then
wmav1 = v2;
Else
wmav1 = wma1;
if idx < P2 Then
wmav2 = v2;
Else
wmav2 = wma2;
if crossup(wmav1,wmav2) Then
buy();
if CrossDown(wmav1,wmav2) Then
sell();
4.
Input : P1(5);
Var : wma1(0,data2);
Var : wmav1(0,data2);
var : v2(0,data2),C2(0,data2),idx(0,data2);
var : CSum(0,data2),sum1(0,data2),cnt(0,data2);
C2 = data2(c);
wma1 = data2(wma(c,P1));
if data2(date != date[1]) Then{
idx = 0;
}
idx = idx+1;
Sum1 = 0;
CSum = 0;
For cnt = 0 To idx-1 {
Sum1 = Sum1 + C2[cnt] * (idx - cnt);
CSum = CSum + idx - cnt;
}
If CSum > 0 Then
v2 = Sum1 / CSum;
Else
v2 = 0;
if idx < P1 Then
wmav1 = v2;
Else
wmav1 = wma1;
if wmav1 > wmav1[1] and wmav1[1] < wmav1[2] Then
buy();
if wmav1 < wmav1[1] and wmav1[1] > wmav1[2] Then
sell();
5
시스템 적용시에 시스템 트래이딩 설정창의 매매탭 하단에사
경보음 설정하시면 됩니다.
Input : P1(20),P2(60);
Var : wma1(0,data2),wma2(0,data2),diff(0,data2);
Var : wmav1(0,data2),wmav2(0,data2);
var : v2(0,data2),C2(0,data2),idx(0,data2);
var : CSum(0,data2),sum1(0,data2),cnt(0,data2);
C2 = data2(c);
wma1 = data2(wma(c,P1));
wma2 = data2(wma(c,P2));
if data2(date != date[1]) Then{
idx = 0;
}
idx = idx+1;
Sum1 = 0;
CSum = 0;
For cnt = 0 To idx-1 {
Sum1 = Sum1 + C2[cnt] * (idx - cnt);
CSum = CSum + idx - cnt;
}
If CSum > 0 Then
v2 = Sum1 / CSum;
Else
v2 = 0;
if idx < P1 Then
wmav1 = v2;
Else
wmav1 = wma1;
if idx < P2 Then
wmav2 = v2;
Else
wmav2 = wma2;
if data2(CodeCategory == 4) Then
diff = data2(PriceScale*2);
Else
diff = data2(PriceScale*1);
if data2(max(wmav1,wmav2) <= H+diff and min(wmav1,wmav2) >= L-diff and (C > O or (C == O and C >= C[1])) ) Then
sell();
if data2(max(wmav1,wmav2) <= H+diff and min(wmav1,wmav2) >= L-diff and (C < O or (C == O and C < C[1])) ) Then
buy();
즐거운 하루되세요
> 국산3 님이 쓴 글입니다.
> 제목 : 문의드려요 ~
> 1. 장시작후 참조데이타의 이평선이 왜곡?되어 시작하는데.. 어제까지의 데이타는 무시하고 오늘09시00초부터의 데이타만 이용한 참조데이타(data2)의 가중이평(3/5/20/60)과 단순이평(3/5/20/60)식을 부탁드립니다.
2. 참조데이타2(지수, 옵션)의 5가중이평과 20가중이평의 수치가 5이상 차이날때랑 5가중이평과 60가중이평이 10이상차이날때를 색구분이나 선을통해서 표시할수 있을까요?
3. 참조데이타2의 가중이평 매매식 부탁드립니다.
5가중이평이 20가중이평을 상향돌파하면 매수 하향돌파하면 매도
4. 참조2의 5가중이평이 상승턴하면 매수 하락턴하면 매도
5. 참조데이타2의 캔들이 20과 60 가중이평에 양봉(도지 등 각종 꼬리캔들포함)으로 닿으면(선물의 경우 +- 2틱오차, 옵션의경우 +-1오차 허용) 매도신호와 함께 소리(기본소리말고 매수, 매도 이렇게되나요?)로 알려줬으면 좋겠습니다.
반대로 참조2의 캔들이 20과 60 가중이평에 음봉(도지등 각종 꼬리캔들포함)으로 닿으면 (선물의경우+- 2틱 오차, 옵션의경우 +-1오차 허용) 매수신호와 함께 소리로 알려주면 좋겠습니다.
수고하세요^^