예스스탁
예스스탁 답변
2021-05-20 15:09:50
안녕하세요
예스스탁입니다.
1
참조데이타를 이용하는 식은 변수선언시에 데이타번호를 지정해서
값을 저장하거나 이전봉 참조시에 해당 참조데이타를 기준으로 값을 저장하거나 가져오게 해야 합니다.
또한 수식내 계산식이나 조건식도 참조데이타함수로 묶어서 지정하셔야 합니다.
2
참조데이타를 이용하는 식이
기본차트봉으로 계산하는 내용이 있으면 해당 변수나 계산식도
data1번호로 처리하셔야 합니다.
3
첨부한 식을 data1과 data2, data3에 대해서 모구 계산하는 내용으로 작성해 드립니다.
식 작성에 참고하시기 바랍니다.
Input: p1(10), p2(20), q1(15), r1(20), r2(200);
var : D1V1(0,data1),D1v2(0,data1),D1v3(0,data1),D1v4(0,data1);
var : D1sc1(0,data1),D1sc2(0,data1),D1sc3(0,data1),D1sc4(0,data1),D1Score(0,data1);
var : D1neutral(False,data1),D1upp(False,data1),D1dnn(False,data1);
var : D2V1(0,Data2),D2v2(0,Data2),D2v3(0,Data2),D2v4(0,Data2);
var : D2sc1(0,Data2),D2sc2(0,Data2),D2sc3(0,Data2),D2sc4(0,Data2),D2Score(0,Data2);
var : D2neutral(False,Data2),D2upp(False,Data2),D2dnn(False,Data2);
var : D3V1(0,data3),D3v2(0,data3),D3v3(0,data3),D3v4(0,data3);
var : D3sc1(0,data3),D3sc2(0,data3),D3sc3(0,data3),D3sc4(0,data3),D3Score(0,data3);
var : D3neutral(False,data3),D3upp(False,data3),D3dnn(False,data3);
D1v1 = data1(Abc(C, H, L, OBV, p1, p2));
D1v2 = data1(ma(D1v1, q1));
If D1v1 > D1v2 then D1sc1 = 1;
Else If D1v1 < D1v2 then D1sc1 = -1;
else D1sc1 = 0;
If D1v2 > D1v2[1] and D1v2[1] > D1v2[3] then D1sc2 = 1;
Else if D1v2 < D1v2[1] and D1v2[1] < D1v2[3] then D1sc2 = -1;
Else D1sc2 = 0;
D1v3 = data1(ma((C+L+H)/3, r1));
D1v4 = data1(ma((C+L+H)/3, r2));
If data1(C > D1v4) then D1sc3 = 1;
Else if data1(C < D1v4) then D1sc3 = -1;
If D1v3 > D1v3[2] and D1v3[2] > D1v3[5] then D1sc4 = 1;
Else If D1v3 < D1v3[2] and D1v3[2] < D1v3[5] then D1sc4 = -1;
Else D1sc4 = 0;
D1Score = D1sc1 + D1sc2 + D1sc3 + D1sc4;
If D1score > 0 then { D1upp = true; D1neutral = false; D1dnn = false;}
Else if D1score < 0 then {D1upp = false; D1neutral = false; D1dnn = true;}
Else {D1upp = false; D1neutral = true; D1dnn = false;}
If D1upp then Plot1(1, 파란색);
Else if D1neutral Then Plot1(0, 검정색);
Else if D1dnn then Plot1(-1, 빨간색);
D2v1 = data2(Abc(C, H, L, OBV, p1, p2));
D2v2 = data2(ma(D2v1, q1));
If D2v1 > D2v2 then D2sc1 = 1;
Else If D2v1 < D2v2 then D2sc1 = -1;
else D2sc1 = 0;
If D2v2 > D2v2[1] and D2v2[1] > D2v2[3] then D2sc2 = 1;
Else if D2v2 < D2v2[1] and D2v2[1] < D2v2[3] then D2sc2 = -1;
Else D2sc2 = 0;
D2v3 = data2(ma((C+L+H)/3, r1));
D2v4 = data2(ma((C+L+H)/3, r2));
If data2(C > D2v4) then D2sc3 = 1;
Else if data2(C < D2v4) then D2sc3 = -1;
If D2v3 > D2v3[2] and D2v3[2] > D2v3[5] then D2sc4 = 1;
Else If D2v3 < D2v3[2] and D2v3[2] < D2v3[5] then D2sc4 = -1;
Else D2sc4 = 0;
D2Score = D2sc1 + D2sc2 + D2sc3 + D2sc4;
If D2score > 0 then { D2upp = true; D2neutral = false; D2dnn = false;}
Else if D2score < 0 then {D2upp = false; D2neutral = false; D2dnn = true;}
Else {D2upp = false; D2neutral = true; D2dnn = false;}
If D2upp then Plot2(1, 파란색);
Else if D2neutral Then Plot2(0, 검정색);
Else if D2dnn then Plot2(-1, 빨간색);
D3v1 = data3(Abc(C, H, L, OBV, p1, p2));
D3v2 = data3(ma(D3v1, q1));
If D3v1 > D3v2 then D3sc1 = 1;
Else If D3v1 < D3v2 then D3sc1 = -1;
else D3sc1 = 0;
If D3v2 > D3v2[1] and D3v2[1] > D3v2[3] then D3sc2 = 1;
Else if D3v2 < D3v2[1] and D3v2[1] < D3v2[3] then D3sc2 = -1;
Else D3sc2 = 0;
D3v3 = data3(ma((C+L+H)/3, r1));
D3v4 = data3(ma((C+L+H)/3, r2));
If data3(C > D3v4) then D3sc3 = 1;
Else if data3(C < D3v4) then D3sc3 = -1;
If D3v3 > D3v3[2] and D3v3[2] > D3v3[5] then D3sc4 = 1;
Else If D3v3 < D3v3[2] and D3v3[2] < D3v3[5] then D3sc4 = -1;
Else D3sc4 = 0;
D3Score = D3sc1 + D3sc2 + D3sc3 + D3sc4;
If D3score > 0 then { D3upp = true; D3neutral = false; D3dnn = false;}
Else if D3score < 0 then {D3upp = false; D3neutral = false; D3dnn = true;}
Else {D3upp = false; D3neutral = true; D3dnn = false;}
If D3upp then Plot3(1, 파란색);
Else if D3neutral Then Plot3(0, 검정색);
Else if D3dnn then Plot3(-1, 빨간색);
즐거운 하루되세요
> 에구머니 님이 쓴 글입니다.
> 제목 : 수식 문의
> 안녕하세요?
첨부한 수식을 data2 와 data3 용으로 수정해 주시기 바랍니다.
메인에는 5분봉
data2: 4시간봉
data3: 일봉
을 넣어서 필터로 사용하려 합니다.
뭐 약간 부정확한 건 상관 없습니다.
이런 시도의 한계나 문제점들도 좀 가르쳐 주시면 좋겠습니다.
그냥 5분봉에서 일봉용으로 200 이평 등을 계산하려면, 예컨데, 5분봉 5000봉을 잡았다 해도,
그 안에 포함되는 일봉은 몇 개 안 될 것 같아서 data3에 넣고 처리하려고 하는데,
지금 제 생각이 맞는 거지요?
설마 data2, 3 없이 그냥 5분봉에서 일봉용이나 4H용 200 이평 등이 계산되는거 가능하지는 않겠지요?
data2용과 data3용은 비슷해 보이니까 data2 용 하나만 작성해 주시고, data3용을 쓸 때, 뭔가 data2용과 차이가 있다면 그 부분만 알려주시면 되겠습니다.
ps: 원하는 것은 그러니까 예컨데, 일봉에서 어제까지 상방이었다가 오늘 종가부터 하방으로 바뀌었다면,
오늘 5분봉 메인차트에서도 일봉신호는 어제까지 상방이었으니까 계속 상방이 나오고,
내일 아침부터는 일봉신호가 하방으로 나오면 좋겠습니다.
감사합니다.