커뮤니티
문의드립니다.
2017-10-31 14:11:04
179
글번호 113788
선물차트 기준으로 문의드립니다.
아래와 같이 세개의 수식을 작성했습니다.
======= 아래 ==========
1. 가중이동평균
input : P(20);
var1 = wma(c,P);
plot1(var1);
2. 틱차트에 10분봉의 단순이동평균선 표시
input : Atime1(10),P1(20),P2(100),P3(240),P4(720);
var : cnt(0),count(0);
var : sum1(0),sum2(0),sum3(0),sum4(0);
var : mav1(0),mav2(0),mav3(0),mav4(0);
Array : C1[800](0);
var1 = TimeToMinutes(stime)%Atime1;
if Bdate != Bdate[1] or (var1 < var1[1] and Bdate == Bdate[1]) Then{
for cnt = 1 to 129{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
sum1 = 0;
sum2 = 0;
sum3 = 0;
sum4 = 0;
for count = 0 to P4{
if count < P1 Then
sum1 = sum1+C1[count];
if count < P2 Then
sum2 = sum2+C1[count];
if count < P3 Then
sum3 = sum3+C1[count];
if count < P4 Then
sum4 = sum4+C1[count];
}
if C1[P1] > 0 Then{
mav1 = sum1/P1;
plot1(mav1);
}
if C1[P2] > 0 Then{
mav2 = sum2/P2;
plot2(mav2);
}
if C1[P3] > 0 Then{
mav3 = sum3/P3;
plot3(mav3);
}
if C1[P4] > 0 Then{
mav4 = sum4/P4;
plot4(mav4);
3. 틱차트에 5분봉 삼각가중평균선 표시
Input : Length1(5);
Var : TF(0),TLen1(0),cnt(0),sum(0),sum1(0),Tma(0);
Array : CC[100](0),mav[100](0);
TLen1 = Ceiling((Length1 + 1) * .5);
TF = TimeToMinutes(stime)%5;
if bdate != Bdate[1] or (bdate == bdate[1] and TF < TF[1]) Then{
for cnt = 1 to 99{
CC[cnt] = CC[cnt-1][1];
mav[cnt] = mav[cnt-1][1];
}
}
CC[0] = C;
if CC[Tlen1] > 0 then{
sum = 0;
for cnt = 0 to TLen1-1{
sum = sum + CC[cnt];
}
mav[0] = sum/Tlen1;
}
if mav[Tlen1] > 0 then{
sum1 = 0;
for cnt = 0 to TLen1-1{
sum1 = sum1 + mav[cnt];
}
Tma = sum1/Tlen1;
plot1(Tma);
}
a. 문의드리고자 하는 것은 캔들의 시가와 종가사이에(봉의 몸통안에),
위 1번식의 plot1선과 2번식의 plot1선, 3번식의 plot1선이 모두 들어있을때를 '검색'하고자
합니다. 검색되는 봉이 양봉이면 해당봉의 위에 검색표시가 나타나게 하고,
검색되는 봉이 음봉이면 해당봉의 아래에 검색표시가 나타나게 하고 싶습니다.
(1~3번식의 기간값은 수정가능하게 부탁드립니다.)
b. 이번에는 위 a 검색식에서 봉의 몸통안에, 1번식의 plot1선, 2번식의 plot1선, 삼각가중평균선 180선이 모두 들어있을때를 검색하고 싶습니다. (3번식 조건은 제외합니다.)
항상 감사드립니다. 수고하세요!!!
답변 1
예스스탁 예스스탁 답변
2017-11-01 10:27:50
안녕하세요
예스스탁입니다.
1
input : P(20);
var : wmav(0);
wmav = wma(c,P);
input : Atime1(10),P1(20),P2(100),P3(240),P4(720);
var : cnt(0),count(0),TF(0);
var : sum1(0),sum2(0),sum3(0),sum4(0);
var : mav1(0),mav2(0),mav3(0),mav4(0);
Array : C1[800](0);
TF = TimeToMinutes(stime)%Atime1;
if Bdate != Bdate[1] or (TF < TF[1] and Bdate == Bdate[1]) Then{
for cnt = 1 to 129{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
sum1 = 0;
sum2 = 0;
sum3 = 0;
sum4 = 0;
for count = 0 to P4{
if count < P1 Then
sum1 = sum1+C1[count];
if count < P2 Then
sum2 = sum2+C1[count];
if count < P3 Then
sum3 = sum3+C1[count];
if count < P4 Then
sum4 = sum4+C1[count];
}
if C1[P1] > 0 Then{
mav1 = sum1/P1;
}
Input : Length1(5);
Var : TF1(0),TLen1(0),sum(0),zsum1(0),Tma(0);
Array : CC[100](0),mav[100](0);
TLen1 = Ceiling((Length1 + 1) * .5);
TF1 = TimeToMinutes(stime)%5;
if bdate != Bdate[1] or (bdate == bdate[1] and TF1 < TF1[1]) Then{
for cnt = 1 to 99{
CC[cnt] = CC[cnt-1][1];
mav[cnt] = mav[cnt-1][1];
}
}
CC[0] = C;
if CC[Tlen1] > 0 then{
sum = 0;
for cnt = 0 to TLen1-1{
sum = sum + CC[cnt];
}
mav[0] = sum/Tlen1;
}
if mav[Tlen1] > 0 then{
zsum1 = 0;
for cnt = 0 to TLen1-1{
zsum1 = zsum1 + mav[cnt];
}
Tma = zsum1/Tlen1;
}
if max(C,O) >= max(Wmav,mav1,tma) and min(Wmav,mav1,tma) >= min(C,O) Then{
if C > O Then
plot1(H,"검색");
Else
plot1(L,"검색");
}
2
input : P(20);
var : wmav(0);
wmav = wma(c,P);
input : Atime1(10),P1(20),P2(100),P3(240),P4(720);
var : cnt(0),count(0),TF(0);
var : sum1(0),sum2(0),sum3(0),sum4(0);
var : mav1(0),mav2(0),mav3(0),mav4(0);
Array : C1[800](0);
TF = TimeToMinutes(stime)%Atime1;
if Bdate != Bdate[1] or (TF < TF[1] and Bdate == Bdate[1]) Then{
for cnt = 1 to 129{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
sum1 = 0;
sum2 = 0;
sum3 = 0;
sum4 = 0;
for count = 0 to P4{
if count < P1 Then
sum1 = sum1+C1[count];
if count < P2 Then
sum2 = sum2+C1[count];
if count < P3 Then
sum3 = sum3+C1[count];
if count < P4 Then
sum4 = sum4+C1[count];
}
if C1[P1] > 0 Then{
mav1 = sum1/P1;
}
Input : Length(180);
var : TLen(0),Tma(0);
TLen = Ceiling((Length + 1) * .5);
Tma = ma(ma(C, TLen), TLen);
if max(C,O) >= max(Wmav,mav1,tma) and min(Wmav,mav1,tma) >= min(C,O) Then{
if C > O Then
plot1(H,"검색");
Else
plot1(L,"검색");
}
즐거운 하루되세요
> 해암 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 선물차트 기준으로 문의드립니다.
아래와 같이 세개의 수식을 작성했습니다.
======= 아래 ==========
1. 가중이동평균
input : P(20);
var1 = wma(c,P);
plot1(var1);
2. 틱차트에 10분봉의 단순이동평균선 표시
input : Atime1(10),P1(20),P2(100),P3(240),P4(720);
var : cnt(0),count(0);
var : sum1(0),sum2(0),sum3(0),sum4(0);
var : mav1(0),mav2(0),mav3(0),mav4(0);
Array : C1[800](0);
var1 = TimeToMinutes(stime)%Atime1;
if Bdate != Bdate[1] or (var1 < var1[1] and Bdate == Bdate[1]) Then{
for cnt = 1 to 129{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
sum1 = 0;
sum2 = 0;
sum3 = 0;
sum4 = 0;
for count = 0 to P4{
if count < P1 Then
sum1 = sum1+C1[count];
if count < P2 Then
sum2 = sum2+C1[count];
if count < P3 Then
sum3 = sum3+C1[count];
if count < P4 Then
sum4 = sum4+C1[count];
}
if C1[P1] > 0 Then{
mav1 = sum1/P1;
plot1(mav1);
}
if C1[P2] > 0 Then{
mav2 = sum2/P2;
plot2(mav2);
}
if C1[P3] > 0 Then{
mav3 = sum3/P3;
plot3(mav3);
}
if C1[P4] > 0 Then{
mav4 = sum4/P4;
plot4(mav4);
3. 틱차트에 5분봉 삼각가중평균선 표시
Input : Length1(5);
Var : TF(0),TLen1(0),cnt(0),sum(0),sum1(0),Tma(0);
Array : CC[100](0),mav[100](0);
TLen1 = Ceiling((Length1 + 1) * .5);
TF = TimeToMinutes(stime)%5;
if bdate != Bdate[1] or (bdate == bdate[1] and TF < TF[1]) Then{
for cnt = 1 to 99{
CC[cnt] = CC[cnt-1][1];
mav[cnt] = mav[cnt-1][1];
}
}
CC[0] = C;
if CC[Tlen1] > 0 then{
sum = 0;
for cnt = 0 to TLen1-1{
sum = sum + CC[cnt];
}
mav[0] = sum/Tlen1;
}
if mav[Tlen1] > 0 then{
sum1 = 0;
for cnt = 0 to TLen1-1{
sum1 = sum1 + mav[cnt];
}
Tma = sum1/Tlen1;
plot1(Tma);
}
a. 문의드리고자 하는 것은 캔들의 시가와 종가사이에(봉의 몸통안에),
위 1번식의 plot1선과 2번식의 plot1선, 3번식의 plot1선이 모두 들어있을때를 '검색'하고자
합니다. 검색되는 봉이 양봉이면 해당봉의 위에 검색표시가 나타나게 하고,
검색되는 봉이 음봉이면 해당봉의 아래에 검색표시가 나타나게 하고 싶습니다.
(1~3번식의 기간값은 수정가능하게 부탁드립니다.)
b. 이번에는 위 a 검색식에서 봉의 몸통안에, 1번식의 plot1선, 2번식의 plot1선, 삼각가중평균선 180선이 모두 들어있을때를 검색하고 싶습니다. (3번식 조건은 제외합니다.)
항상 감사드립니다. 수고하세요!!!