안녕하세요 어느덧 봄이 왔네요. 항상 건강하시길 바랍니다.
아래와 같은 식을 만들려고 하는데 어려워서 그런데 도와주시면 감사하겠습니다.
부탁드립니다.
----
*x는 다 변수입니다
a. 현재가 기준으로 x봉 이내의 봉만 참고
b. 조건을 만족하는 봉이 완성될 때마다(ex, 양봉 && 거래량 100주이상 그리고 음봉 && 거래량 200주이상) 계속하여 해당 봉의 (H+L)/2 값을 가로로 쭉 출력
c. 가로줄이 많이 생길텐데, 이때 각 가로줄을 변수로 저장.
d. 현재가를 기준으로, 현재가 하단의 가로줄은 홀수 변수에, 현재가 기준으로 상단 가로줄은 짝수 변수에 할당
e. 하단 가로줄의 경우, O>해당 가로줄 && C<해당 가로줄일 경우, 해당 가로줄은 삭제
f. 상단 가로줄의 경우, O<해당 가로줄 && C>해당 가로줄일 경우, 해당 가로줄은 삭제
g. 가로줄이 지워질때마다 위에있는 d프로세스 반복
답변 1
예스스탁
예스스탁 답변
2023-03-07 15:18:40
안녕하세요
예스스탁입니다.
1
일반 plot함수는 삭제가 가능하지 않습니다.
수평선을 그리기 위해서는 추세선함수를 이용하셔야 합니다.
다만 추세선 함수가 봉완성시에만 출력되어
차트 마지막봉(미완성봉)을 기준으로는 그릴수 없습니다.
마지막 완성봉기준으로 그리게 됩니다.
2
홀짝변수로 지정해 드리기는 어렵습니다.
조건만족봉의 값은 배열변수에 저장되는데
현재봉이면 0번방, 1봉전이면 1번방 순으로 저장됩니다.
3
input : x(20);
var : cnt(0);
Array : VV[100](0),TL[100](0);
Condition1 = (C>O and V >= 100) or (C<O and V >= 200);
var1 = (H+L)/2;
For cnt = 0 to X-1
{
VV[cnt] = 0;
TL_Delete(TL[cnt]);
if Condition1[cnt] == true Then
{
VV[cnt] = var1[cnt];
if (C < VV[cnt] and !(O > VV[cnt] and C < VV[cnt]))Then
{
TL[cnt] = TL_New(sDate[cnt],sTime[cnt],VV[cnt],sDate,sTime,VV[cnt]);
TL_SetColor(TL[cnt],Blue);
TL_SetExtRight(TL[cnt],true);
}
if (C > VV[cnt] and !(O < VV[cnt] and C > VV[cnt])) Then
{
TL[cnt] = TL_New(sDate[cnt],sTime[cnt],VV[cnt],sDate,sTime,VV[cnt]);
TL_SetColor(TL[cnt],Red);
TL_SetExtRight(TL[cnt],true);
}
}
}
즐거운 하루되세요
> 이만스닥 님이 쓴 글입니다.
> 제목 : 가로선 출력 문의 드립니다
> 안녕하세요 어느덧 봄이 왔네요. 항상 건강하시길 바랍니다.
아래와 같은 식을 만들려고 하는데 어려워서 그런데 도와주시면 감사하겠습니다.
부탁드립니다.
----
*x는 다 변수입니다
a. 현재가 기준으로 x봉 이내의 봉만 참고
b. 조건을 만족하는 봉이 완성될 때마다(ex, 양봉 && 거래량 100주이상 그리고 음봉 && 거래량 200주이상) 계속하여 해당 봉의 (H+L)/2 값을 가로로 쭉 출력
c. 가로줄이 많이 생길텐데, 이때 각 가로줄을 변수로 저장.
d. 현재가를 기준으로, 현재가 하단의 가로줄은 홀수 변수에, 현재가 기준으로 상단 가로줄은 짝수 변수에 할당
e. 하단 가로줄의 경우, O>해당 가로줄 && C<해당 가로줄일 경우, 해당 가로줄은 삭제
f. 상단 가로줄의 경우, O<해당 가로줄 && C>해당 가로줄일 경우, 해당 가로줄은 삭제
g. 가로줄이 지워질때마다 위에있는 d프로세스 반복