커뮤니티

수식 문의

프로필 이미지
에구머니
2021-05-20 16:33:41
1840
글번호 149179
답변완료
안녕하세요? 첨부한 수식을 data2 와 data3 용으로 수정해 주시기 바랍니다. 메인에는 5분봉 data2: 4시간봉 data3: 일봉 을 넣어서 필터로 사용하려 합니다. 뭐 약간 부정확한 건 상관 없습니다. 이런 시도의 한계나 문제점들도 좀 가르쳐 주시면 좋겠습니다. 그냥 5분봉에서 일봉용으로 200 이평 등을 계산하려면, 예컨데, 5분봉 5000봉을 잡았다 해도, 그 안에 포함되는 일봉은 몇 개 안 될 것 같아서 data3에 넣고 처리하려고 하는데, 지금 제 생각이 맞는 거지요? 설마 data2, 3 없이 그냥 5분봉에서 일봉용이나 4H용 200 이평 등이 계산되는거 가능하지는 않겠지요? data2용과 data3용은 비슷해 보이니까 data2 용 하나만 작성해 주시고, data3용을 쓸 때, 뭔가 data2용과 차이가 있다면 그 부분만 알려주시면 되겠습니다. ps: 원하는 것은 그러니까 예컨데, 일봉에서 어제까지 상방이었다가 오늘 종가부터 하방으로 바뀌었다면, 오늘 5분봉 메인차트에서도 일봉신호는 어제까지 상방이었으니까 계속 상방이 나오고, 내일 아침부터는 일봉신호가 하방으로 나오면 좋겠습니다. 감사합니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

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분봉 메인차트에서도 일봉신호는 어제까지 상방이었으니까 계속 상방이 나오고, 내일 아침부터는 일봉신호가 하방으로 나오면 좋겠습니다. 감사합니다.