예스스탁
예스스탁 답변
2020-09-25 11:44:45
안녕하세요
예스스탁입니다.
1
var : T(0),S(0);
if C > O Then
var1 = O;
if c < O Then
var2 = o;
if var1 > 0 Then
Plot1(var1,"양봉시가");
if var2 > 0 Then
Plot2(var2,"음봉시가");
if var1 > var1[1] Then
T = 1;
if var1 < var1[1] Then
T = -1;
if var2 > var2[1] Then
S = 1;
if var2 < var2[1] Then
S = -1;
#(양봉시가 상승전환이나 하락전환)
if T != T[1] Then
Var3 = var1[1];
if var3 > 0 Then
plot3(Var3);
#(음봉시가 상승전환이나 하락전환)
if S != S[1] Then
Var4 = var2[1];
if var4 > 0 Then
plot4(Var4);
2
input : Period(50),SDn(2),SEn(3),굵기(2);
input : Price1(250),Price2(240);
var : LRLv(0),LRSv(0),cnt(0),maxR(0),Mid(0),STDV(0);
VAR : X(0), STDERR(0), LINREGS(0), SERR(0),calcB(0),calcA(0);
var : TL1(0),TL2(0),TL3(0);
var : TL4(0),TL5(0),TL6(0),TL7(0),TL8(0),TL9(0);
LRLv = LRL(C,Period);
LRSv = LRS(C,Period);
stdv = std(c,Period);
X = INDEX;
Value11 = AccumN(X * Close, Period) - (Period * ma(X, Period) *ma(Close, Period));
Value12 = AccumN(Square(X), Period) - (Period * Square(ma(X, Period)));
calcB = Value11/Value12;
calcA = ma(Close, Period) - (calcB * ma(X, Period));
IF INDEX > Period THEN
{
VALUE1 = (ACCUMN(CLOSE^2, Period)) - ((CALCA * ACCUMN(CLOSE, Period))) -
((CALCB * ACCUMN(X * CLOSE, Period)));
VALUE2 = Period - 2;
VALUE3 = (VALUE1 / VALUE2);
IF VALUE3 > 0 THEN
STDERR = SQRT(VALUE1 / VALUE2);
ELSE
STDERR = STDERR[1];
}
maxR = 0;
For cnt = 0 to Period-1
{
Mid = LRLV-LRSv*cnt;
if abs(L[cnt]-Mid) > maxR Then
maxR = abs(L[cnt]-Mid);
if abs(H[cnt]-Mid) > maxR Then
maxR = abs(H[cnt]-Mid);
}
TL_Delete(TL1);
TL_Delete(TL2);
TL_Delete(TL3);
TL1 = TL_New(sDate[Period-1],sTime[Period-1],Mid,sDate,sTime,LRLv);
TL2 = TL_New(sDate[Period-1],sTime[Period-1],Mid+maxr,sDate,sTime,LRLv+maxr);
TL3 = TL_New(sDate[Period-1],sTime[Period-1],Mid-maxr,sDate,sTime,LRLv-maxr);
TL_SetColor(TL1,GREEN);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,BLUE);
TL_SetSize(TL1,굵기);
TL_SetSize(TL2,굵기);
TL_SetSize(TL3,굵기);
TL_Delete(TL4);
TL_Delete(TL5);
TL4 = TL_New(sDate[Period-1],sTime[Period-1],Mid+STDERR*SEn,sDate,sTime,LRLv+STDERR*SEn);
TL5 = TL_New(sDate[Period-1],sTime[Period-1],Mid-STDERR*SEn,sDate,sTime,LRLv-STDERR*SEn);
TL_SetColor(TL4,MAGENTA);
TL_SetColor(TL5,CYAN);
TL_SetSize(TL4,굵기);
TL_SetSize(TL5,굵기);
TL_Delete(TL6);
TL_Delete(TL7);
TL6 = TL_New(sDate[Period-1],sTime[Period-1],Mid+stdv*SDn,sDate,sTime,LRLv+stdv*SDn);
TL7 = TL_New(sDate[Period-1],sTime[Period-1],Mid-stdv*SDn,sDate,sTime,LRLv-stdv*SDn);
TL_SetColor(TL6,PINK);
TL_SetColor(TL7,LBLUE);
TL_SetSize(TL6,굵기);
TL_SetSize(TL7,굵기);
if Index == 1 Then
{
TL8 = TL_New(sDate,sTime,Price1,NextBarSdate,NextBarStime,Price1);
TL9 = TL_New(sDate,sTime,Price2,NextBarSdate,NextBarStime,Price2);
TL_SetExtRight(TL8,true);
TL_SetExtRight(TL9,true);
TL_SetColor(TL8,GRAY);
TL_SetColor(TL9,GRAY);
TL_SetSize(TL8,굵기);
TL_SetSize(TL9,굵기);
}
즐거운 하루되세요
> 빠른예스 님이 쓴 글입니다.
> 제목 : 문의 드립니다.
> 안녕하세요. 정말정말 감사합니다. 도움이 많이 되고 있습니다.
2가지 문의드립니다..
1.
지나온 모든 캔들의 시가를 양봉/음봉 나눠서 출력하고 싶습니다.
Plot1은 양봉의 시가를, plot2는 음봉의 시가를 쭉 선으로 출력하려고 합니다.
그리고 해당캔들 시가가 앞뒤로 가장 크거나 작으면(swing함수인가요?) 뭔가 다르게 표시되게 부탁드립니다.
2.
raff regression channel 문의를 드렸었습니다. 적용이 아주 잘 됩니다 정말 감사합니다. 귀찮게해드려 정말 죄송하지만, 이 지표에 다른 채널도 추가가 가능할까요?
현재 TL이 1부터 3까지 있는데
TL 4-5는 standard error channel의 상한 하한
TL 6-7은 standard Deviation channel의 상한 하한
TL 8-9는 제가 입력한 숫자만큼 평행하게 상한하한
이렇게 가능하다면 부탁드립니다.. 우선 아래 답변해주신 raff channel 수식 올리겠습니다.
=====================
input : Period(50),굵기(2);
var : LRLv(0),LRSv(0),cnt(0),maxR(0),Mid(0);
var : TL1(0),TL2(0),TL3(0);
LRLv = LRL(C,Period);
LRSv = LRS(C,Period);
maxR = 0;
For cnt = 0 to Period-1
{
Mid = LRLV-LRSv*cnt;
if abs(L[cnt]-Mid) > maxR Then
maxR = abs(L[cnt]-Mid);
if abs(H[cnt]-Mid) > maxR Then
maxR = abs(H[cnt]-Mid);
}
TL_Delete(TL1);
TL_Delete(TL2);
TL_Delete(TL3);
TL1 = TL_New(sDate[Period-1],sTime[Period-1],Mid,sDate,sTime,LRLv);
TL2 = TL_New(sDate[Period-1],sTime[Period-1],Mid+maxr,sDate,sTime,LRLv+maxr);
TL3 = TL_New(sDate[Period-1],sTime[Period-1],Mid-maxr,sDate,sTime,LRLv-maxr);
TL_SetColor(TL1,GREEN);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,BLUE);
TL_SetSize(TL1,굵기);
TL_SetSize(TL2,굵기);
TL_SetSize(TL3,굵기);