예스스탁
예스스탁 답변
2025-01-09 11:27:36
안녕하세요
예스스탁입니다.
1
볼린저 밴드 상단 진입선
볼린저 밴드 하단 돌파선
은 어떤값인지 불명확하여 해당 내용 제외하고 작성해 드립니다
2
수식에서 지표사이 채우기가 가능하지 않습니다.
지표속성의 차트표시탭에서 직접설정하셔야 합니다.
각 선들모두 지표속성에서 색상등 지정하시면 됩니다.
3
파동선은 일반 plot이 아닌 추세선으로 작성되어야 합니다.
추세선은 함수로 색상, 굵기등이 지정되므로
변경시 수식내 함수 참고하셔서 변경하셔야 합니다.
4
input : Period(20),dv(2);
var : BBup(0),BBmd(0),BBdn(0);
BBup = BollBandUp(Period,dv);
BBmd = ma(c,Period);
BBdn = BollBandDown(Period,dv);
var1 = ma(C,20);
if var1 > var1[1] Then
value1 = var1;
if var1 < var1[1] Then
value2 = var1;
if bbup > bbup[1] Then
Value3 = bbup;
if bbup < bbup[1] Then
Value4 = bbup;
if bbdn > bbdn[1] Then
Value5 = bbdn;
if bbdn < bbdn[1] Then
Value6 = bbdn;
Plot1(c,"종가");
Plot2(var1,"20선");
Plot3(value1,"20선고점");
Plot4(value2,"20선저점");
Plot5(value3,"볼밴상단고점");
Plot6(value4,"볼밴상단하향밴드");
Plot7(value5,"볼밴하단저점");
Plot8(value6,"볼밴하단상향밴드");
input : length(20);
Array : HD[10](0),HT[10](0),HV[10](0);
Array : LD[10](0),LT[10](0),LV[10](0);
var : cnt(0),Hprice(0),Lprice(0);
var : UpTrend(false),DownTrend(False),Trend(0);
var : ZigZagTL(0),HTL(0),LTL(0);
var : Text(0),Box(0),Grid(0);
HPrice = H;
LPrice = L;
if Index == 0 Then
{
HD[0] = sDate;
HT[0] = sTime;
HV[0] = HPrice;
LD[0] = sDate;
LT[0] = sTime;
LV[0] = LPrice;
}
Else
{
UpTrend = HPrice >= Highest(HPrice,length)[1];
DownTrend = LPrice <= Lowest(LPrice,length)[1];
if trend <= 0 and UpTrend == true Then
{
trend = 1;
For cnt = 9 DownTo 1
{
HD[cnt] = HD[cnt-1];
HT[cnt] = HT[cnt-1];
HV[cnt] = HV[cnt-1];
}
HD[0] = sDate;
HT[0] = sTime;
HV[0] = HPrice;
ZigZagTL = TL_New(LD[0],LT[0],LV[0],HD[0],HT[0],HV[0]);
TL_SetColor(ZigZagTL,Red);
TL_SetSize(ZigZagTL,1);
Text = Text_New(HD[0],HT[0],HV[0],NumToStr(HV[0],2));
Text_SetColor(Text,Red);
Text_SetSize(Text,12);
Text_SetBold(Text,1);
Text_SetStyle(Text,2,1);
TL_SetExtRight(HTL,False);
HTL = TL_New(sDate,sTime,HV[0],NextBarSdate,NextBarStime,HV[0]);
TL_SetExtRight(HTL,true);
TL_SetColor(HTL,Red);
TL_SetSize(HTL,1);
}
Else if trend >= 0 and DownTrend Then
{
trend = -1;
For cnt = 9 DownTo 1
{
LD[cnt] = LD[cnt-1];
LT[cnt] = LT[cnt-1];
LV[cnt] = LV[cnt-1];
}
LD[0] = sDate;
LT[0] = sTime;
LV[0] = LPrice;
ZigZagTL = TL_New(HD[0],HT[0],HV[0],LD[0],LT[0],LV[0]);
TL_SetColor(ZigZagTL,Blue);
TL_SetSize(ZigZagTL,1);
Text = Text_New(LD[0],LT[0],LV[0],NumToStr(LV[0],2));
Text_SetColor(Text,Blue);
Text_SetSize(Text,12);
Text_SetBold(Text,1);
Text_SetStyle(Text,2,0);
TL_SetExtRight(LTL,False);
LTL = TL_New(sDate,sTime,LV[0],NextBarSdate,NextBarStime,LV[0]);
TL_SetExtRight(LTL,true);
TL_SetColor(LTL,Blue);
TL_SetSize(LTL,1);
}
Else
{
if trend == 1 Then
{
if HPrice > HV[0] Then
{
HD[0] = sDate;
HT[0] = sTime;
HV[0] = HPrice;
TL_SetEnd(ZigZagTL,HD[0],HT[0],HV[0]);
Text_SetLocation(Text,HD[0],HT[0],HV[0]);
Text_SetString(Text,NumToStr(HV[0],2));
TL_SetBegin(HTL,HD[0],HT[0],HV[0]);
TL_SetEnd(HTL,NextBarSdate,NextBarStime,HV[0]);
}
}
//하락구간
if trend == -1 Then
{
if LPrice < LV[0] Then
{
LD[0] = sDate;
LT[0] = sTime;
LV[0] = LPrice;
TL_SetEnd(ZigZagTL,LD[0],LT[0],LV[0]);
Text_SetLocation(Text,LD[0],LT[0],LV[0]);
Text_SetString(Text,NumToStr(LV[0],2));
TL_SetBegin(LTL,LD[0],LT[0],LV[0]);
TL_SetEnd(LTL,NextBarSdate,NextBarStime,LV[0]);
}
}
}
}
즐거운 하루되세요
> s1017051 님이 쓴 글입니다.
> 제목 : 수식 문의 드립니다.
> 1.20 일선과 종가 사이 색칠(상방 ; 연녹 하방 ; 노랑
2.20 일선 고점 / 저점
3.볼린저 밴드 상단 고점
4.볼린저 밴드 상단선 하향시 밴드
5. 볼린저 밴드 하단 저점
6.볼린저 밴드 하단선 상향시 밴드
7.볼린저 밴드 상단 진입선
8.볼린저 밴드 하단 돌파선
9.파동선 + 우측 연장선
10.* 각선들 굵기, 색상, 글자 호수 변경 가능