커뮤니티
타주기시스템 오류수정
2018-08-31 22:30:10
137
글번호 121793
항상 감사드립니다
아래 시스템식에서 data1은 정상적으로 나오는데 data2는 원래식과 다르게 나옵니다.
수정부탁드립니다
Input : Period(12), Period1(5), Period2(5);
var : val1(0,data1),V1(0,data1),v11(0,data1),v2(0,data1),v22(0,data1);
var : H1(0,data1),L1(0,data1),H2(0,data1),L2(0,data1);
var : cond1(false,data1),cond2(false,data1),T1(0,data1);
Input : sto1(20), sto2(10), sto3(8);
var : d2H1(0,data2),d2L1(0,data2),d2H2(0,data2),d2L2(0,data2);
var : d2value1(0,data2),d2condition1(false,data2),d2condition2(false,data2);
var : d2var1(0,data2),d2var11(0,data2),d2var2(0,data2),d2var22(0,data2),T2(0,data2);
/**********************************************************************************/
val1 = StochasticsD(Period,Period1,PEriod2);
Cond1 = val1 > 80;
Cond2 = val1 < 20;
if Cond1 == true and Cond1[1] == false Then
{
H1 = H;
L1 = L;
}
if Cond1 == true then
{
if h > H1 Then
H1 = h;
if l < L1 Then
L1 = l;
}
if Cond1 == false and Cond1[1] == true Then
{
v1 = (H1+L1)/2;
v11 = v1[1];
}
if Cond2 == true and Cond2[1] == false Then
{
H2 = H;
L2 = L;
}
if Cond2 == true then
{
if h > H2 Then
H2 = h;
if l < L2 Then
L2 = l;
}
if Cond2 == false and Cond2[1] == true Then
{
v2 = (H2+L2)/2;
v22 = v2[1];
}
/*************************************************************/
d2Value1 = StochasticsD(sto1,sto2,sto3);
d2Condition1 = d2value1 > 80;
d2Condition2 = d2value1 < 20;
if d2Condition1 == true and d2Condition1[1] == false Then
{
d2H1 = data2(H);
d2L1 = data2(L);
}
if d2Condition1 == true then
{
if data2(h) > d2H1 Then
d2H1 = data2(h);
if l < d2L1 Then
d2L1 = data2(l);
}
if d2Condition1 == false and d2Condition1[1] == true Then
{
d2var1 = (d2H1+d2L1)/2;
d2var11 = d2var1[1];
}
if d2Condition2 == true and d2Condition2[1] == false Then
{
d2H2 = data2(H);
d2L2 = data2(L);
}
if d2Condition2 == true then
{
if data2(h) > d2H2 Then
d2H2 = data2(h);
if data2(l) < d2L2 Then
d2L2 = data2(l);
}
if d2Condition2 == false and d2Condition2[1] == true Then
{
d2var2 = (d2H2+d2L2)/2;
d2var22 = d2var2[1];
}
if v1 > v11 and crossup(val1,80) Then
t1 = 1;
if v2 < v22 and CrossDown(val1,20) Then
T1 = -1;
if d2var1 > d2var11 and crossup(d2value1,80) Then
T2 = 1;
if d2var2 < d2var22 and CrossDown(d2value1,20) Then
T2 = -1;
/********************************************************************/
if t2 == 1 and t2 == 1 Then
buy("b1");
if t2 == -1 and t2 == -1 Then
sell("s1");
감사합니다
답변 1
예스스탁 예스스탁 답변
2018-09-06 08:55:26
안녕하세요
예스스탁입니다.
Input : Period(12), Period1(5), Period2(5);
var : val1(0,data1),V1(0,data1),v11(0,data1),v2(0,data1),v22(0,data1);
var : H1(0,data1),L1(0,data1),H2(0,data1),L2(0,data1);
var : cond1(false,data1),cond2(false,data1),T1(0,data1);
Input : sto1(20), sto2(10), sto3(8);
var : d2H1(0,data2),d2L1(0,data2),d2H2(0,data2),d2L2(0,data2);
var : d2value1(0,data2),d2condition1(false,data2),d2condition2(false,data2);
var : d2var1(0,data2),d2var11(0,data2),d2var2(0,data2),d2var22(0,data2),T2(0,data2);
/**********************************************************************************/
val1 = data1(StochasticsD(Period,Period1,PEriod2));
Cond1 = val1 > 80;
Cond2 = val1 < 20;
if Cond1 == true and Cond1[1] == false Then
{
H1 = data1(H);
L1 = data1(L);
}
if Cond1 == true then
{
if data1(h) > H1 Then
H1 = data1(h);
if data1(l) < L1 Then
L1 = data1(l);
}
if Cond1 == false and Cond1[1] == true Then
{
v1 = (H1+L1)/2;
v11 = v1[1];
}
if Cond2 == true and Cond2[1] == false Then
{
H2 = data1(H);
L2 = data1(L);
}
if Cond2 == true then
{
if data1(h) > H2 Then
H2 = data1(h);
if data1(l) < L2 Then
L2 = data1(l);
}
if Cond2 == false and Cond2[1] == true Then
{
v2 = (H2+L2)/2;
v22 = v2[1];
}
/*************************************************************/
d2Value1 = data2(StochasticsD(sto1,sto2,sto3));
d2Condition1 = d2value1 > 80;
d2Condition2 = d2value1 < 20;
if d2Condition1 == true and d2Condition1[1] == false Then
{
d2H1 = data2(H);
d2L1 = data2(L);
}
if d2Condition1 == true then
{
if data2(h) > d2H1 Then
d2H1 = data2(h);
if l < d2L1 Then
d2L1 = data2(l);
}
if d2Condition1 == false and d2Condition1[1] == true Then
{
d2var1 = (d2H1+d2L1)/2;
d2var11 = d2var1[1];
}
if d2Condition2 == true and d2Condition2[1] == false Then
{
d2H2 = data2(H);
d2L2 = data2(L);
}
if d2Condition2 == true then
{
if data2(h) > d2H2 Then
d2H2 = data2(h);
if data2(l) < d2L2 Then
d2L2 = data2(l);
}
if d2Condition2 == false and d2Condition2[1] == true Then
{
d2var2 = (d2H2+d2L2)/2;
d2var22 = d2var2[1];
}
if v1 > v11 and crossup(val1,80) Then
t1 = 1;
if v2 < v22 and CrossDown(val1,20) Then
T1 = -1;
if d2var1 > d2var11 and crossup(d2value1,80) Then
T2 = 1;
if d2var2 < d2var22 and CrossDown(d2value1,20) Then
T2 = -1;
/********************************************************************/
if t2 == 1 and t2 == 1 Then
buy("b1");
if t2 == -1 and t2 == -1 Then
sell("s1");
즐거운 하루되세요
> 조민철 님이 쓴 글입니다.
> 제목 : 타주기시스템 오류수정
> 항상 감사드립니다
아래 시스템식에서 data1은 정상적으로 나오는데 data2는 원래식과 다르게 나옵니다.
수정부탁드립니다
Input : Period(12), Period1(5), Period2(5);
var : val1(0,data1),V1(0,data1),v11(0,data1),v2(0,data1),v22(0,data1);
var : H1(0,data1),L1(0,data1),H2(0,data1),L2(0,data1);
var : cond1(false,data1),cond2(false,data1),T1(0,data1);
Input : sto1(20), sto2(10), sto3(8);
var : d2H1(0,data2),d2L1(0,data2),d2H2(0,data2),d2L2(0,data2);
var : d2value1(0,data2),d2condition1(false,data2),d2condition2(false,data2);
var : d2var1(0,data2),d2var11(0,data2),d2var2(0,data2),d2var22(0,data2),T2(0,data2);
/**********************************************************************************/
val1 = StochasticsD(Period,Period1,PEriod2);
Cond1 = val1 > 80;
Cond2 = val1 < 20;
if Cond1 == true and Cond1[1] == false Then
{
H1 = H;
L1 = L;
}
if Cond1 == true then
{
if h > H1 Then
H1 = h;
if l < L1 Then
L1 = l;
}
if Cond1 == false and Cond1[1] == true Then
{
v1 = (H1+L1)/2;
v11 = v1[1];
}
if Cond2 == true and Cond2[1] == false Then
{
H2 = H;
L2 = L;
}
if Cond2 == true then
{
if h > H2 Then
H2 = h;
if l < L2 Then
L2 = l;
}
if Cond2 == false and Cond2[1] == true Then
{
v2 = (H2+L2)/2;
v22 = v2[1];
}
/*************************************************************/
d2Value1 = StochasticsD(sto1,sto2,sto3);
d2Condition1 = d2value1 > 80;
d2Condition2 = d2value1 < 20;
if d2Condition1 == true and d2Condition1[1] == false Then
{
d2H1 = data2(H);
d2L1 = data2(L);
}
if d2Condition1 == true then
{
if data2(h) > d2H1 Then
d2H1 = data2(h);
if l < d2L1 Then
d2L1 = data2(l);
}
if d2Condition1 == false and d2Condition1[1] == true Then
{
d2var1 = (d2H1+d2L1)/2;
d2var11 = d2var1[1];
}
if d2Condition2 == true and d2Condition2[1] == false Then
{
d2H2 = data2(H);
d2L2 = data2(L);
}
if d2Condition2 == true then
{
if data2(h) > d2H2 Then
d2H2 = data2(h);
if data2(l) < d2L2 Then
d2L2 = data2(l);
}
if d2Condition2 == false and d2Condition2[1] == true Then
{
d2var2 = (d2H2+d2L2)/2;
d2var22 = d2var2[1];
}
if v1 > v11 and crossup(val1,80) Then
t1 = 1;
if v2 < v22 and CrossDown(val1,20) Then
T1 = -1;
if d2var1 > d2var11 and crossup(d2value1,80) Then
T2 = 1;
if d2var2 < d2var22 and CrossDown(d2value1,20) Then
T2 = -1;
/********************************************************************/
if t2 == 1 and t2 == 1 Then
buy("b1");
if t2 == -1 and t2 == -1 Then
sell("s1");
감사합니다
다음글
이전글