예스스탁
예스스탁 답변
2023-05-02 11:21:51
안녕하세요
예스스탁입니다.
1
차트에 표시되는 숫자는 등락값으로
저점대비 가격상승분, 고점대비 가격하락분입니다.
수식안에서는 최근 것만 표기하라고 되어 있지만
주식에서는 지정한 값이 너무 낮아 지우지 못하고 남아있는 것 같습니다.
해당수치 자체가 남아 있는 것에 의미가 없습니다.
올리신 수식이 선물과 같이 파생상품에 적용되는 수치로 모두 작성이 되어 있습니다.
전환이 기본값이 0.2로 되어 있어
직전고점이나 직전저점 대비 0.2포인트 변동되면 추세가 변경되는 내용입니다.
수식내에도 별도로 0.5포인트등으로 제어하는 내용도 있습니다.
주식에 사용하시려면 해당내용을 해당 종목에 맞게 모두 수정해서 사용하셔야 합니다.
2
올려주신 내용으로는 작성이 어렵습니다.
즐거운 하루되세요
> 용팔이 님이 쓴 글입니다.
> 제목 : 지표관련 문의드립니다
> 안녕하세요. 수식작성에 도움주셔서 항상 감사합니다
1) 첨부한 차트에서 나오는 숫자는 어떤 의미인지 간단하게라도 안내부탁드립니다
저점대비 가격상승/하락분을 나타내는것 같기도 하고..
수치는 어떤 위치일때만 표시하는 건가요? 어디는 숫자가 있고 어디는 없고...
(혹시 아신다면 ...의미있는 수치는 몇% 을 기준으로 보나요? 종목마다 다르겠지만 )
2) 첨부한 아래 수식에서
0봉전기준, 이전 60봉이내 가장 높은 수치를 표기한 위치부분에서
윗꼬리는 제외하고 양봉의 종가부분(유첨 ① 캔들)과 처음 발생한 음봉의 시가(유첨 ②캔들)에 2개의 수평라인을 긋는 지표수식 부탁드립니다
(60봉이내는 숫자 조정가능)
참고로,차트에 적용한 지표수식을 첨부합니다
-----------지표수식--------------------------------------
Input : 전환(0.2),쌍바닥상(1),쌍바닥하(2),쌍봉상(1),쌍봉하(2);
Var:j(0),jj(0),HH(0),LL(0),hiBar(0),loBar(0),최종꼭지점(""),처리구분(""), TL1(0),TX1(0);
Array:고[10,4](0),저[10,4](0);
var : box(0),BB(False);
var : TX11(0),TX12(0),TX13(0);
var : cond11(False),cond12(False),cond13(False);
HH = H;
LL = L;
If Index == 0 Then
{
고[1,1] = HH;
고[1,2] = 0;
고[1,3] = sDate;
고[1,4] = sTime;
저[1,1] = LL;
저[1,2] = 0;
저[1,3] = sDate;
저[1,4] = sTime;
}
If Index > 0 Then
{
hiBar = hiBar + 1;
loBar = loBar + 1;
}
If HH[hiBar] < HH Then hiBar = 0;
If LL[loBar] > LL Then loBar = 0;
Condition1 = 저[1,1]+전환 <= HH and hiBar == 0;
Condition2 = 고[1,1]-전환 >= LL and loBar == 0;
처리구분 = "";
If Condition1 and Condition2 Then
{
If 최종꼭지점 == "저점" Then
{
If 저[1,1] > LL Then 처리구분 = "저점처리";
Else 처리구분 = "고점처리";
}
Else If 최종꼭지점 == "고점" Then
{
If 고[1,1] < HH Then 처리구분 = "고점처리";
Else 처리구분 = "저점처리";
}
}
Else If Condition1 Then 처리구분 = "고점처리";
Else If Condition2 Then 처리구분 = "저점처리";
If 처리구분 == "고점처리" Then
{
If 최종꼭지점 == "저점" Then
{
//양전환되면 tx11점은 삭제
Text_Delete(tx11);
For j = 10 DownTo 2
{
For jj = 1 To 4
{
고[j,jj] = 고[j-1,jj];
}
}
고[1,1] = HH[hiBar];
고[1,2] = Index - hiBar;
고[1,3] = sDate[hiBar];
고[1,4] = sTime[hiBar];
hiBar = -1;
loBar = -1;
TL1 = TL_New_Self(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
TL_SetSize(TL1,2);
TL_SetColor(TL1,RED);
Text_Delete(tx1);
TX1 = Text_New_Self(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1]-저[1,1],2));
Text_SetSize(tx1,25);
Text_SetColor(Tx1,Red);
Text_SetStyle(tx1,1,1);
Text_SetBold(tx1,1);
cond13 = False;
if 고[1,1] <= 고[2,1]+PriceScale*쌍봉상 and 고[1,1] >= 고[2,1]-PriceScale*쌍봉하 and 고[2,1] > 0 Then
{
cond13 = true;
tx13 = Text_New(고[1,3],고[1,4],고[1,1],"●");
Text_SetStyle(tx13,2,0);
Text_SetColor(tx13,Magenta);
Text_SetSize(tx13,20);
}
}
Else If 고[1,1] < HH[hiBar] Then
{
고[1,1] = HH[hiBar];
고[1,2] = Index - hiBar;
고[1,3] = sDate[hiBar];
고[1,4] = sTime[hiBar];
hiBar = -1;
loBar = -1;
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
Text_SetString(TX1,NumToStr(고[1,1]-저[1,1],2));
Text_SetLocation(TX1,고[1,3],고[1,4],고[1,1]);
if cond13 == False Then
{
if 고[1,1] <= 고[2,1]+PriceScale*쌍봉상 and 고[1,1] >= 고[2,1]-PriceScale*쌍봉하 and 고[2,1] > 0 Then
{
cond13 = true;
tx13 = Text_New (고[1,3],고[1,4],고[1,1],"●");
Text_SetStyle(tx12,2,0);
Text_SetColor(tx12,Magenta);
Text_SetSize(tx12,20);
}
}
Else
{
if 고[1,1] <= 고[2,1]+PriceScale*쌍봉상 and 고[1,1] >= 고[2,1]-PriceScale*쌍봉하 and 고[2,1] > 0 Then
{
Text_SetLocation(tx11,고[1,3],고[1,4],고[1,1]);
}
Else
{
Text_Delete(tx12);
cond12 = False;
}
}
}
최종꼭지점 = "고점";
Plot1(고[1,1]);
NoPlot(2);
}
If 처리구분 == "저점처리" Then
{
If 최종꼭지점 == "고점" Then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
저[j,jj] = 저[j-1,jj];
}
}
저[1,1] = LL[loBar];
저[1,2] = Index - loBar;
저[1,3] = sDate[loBar];
저[1,4] = sTime[loBar];
hiBar = -1;
loBar = -1;
TL1 = TL_New_Self(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
TL_SetSize(TL1,2);
TL_SetColor(TL1,BLUE);
Text_Delete(tx1);
TX1 = Text_New_Self(저[1,3],저[1,4],저[1,1],NumToStr(저[1,1]-고[1,1],2));
Text_SetSize(tx1,25);
Text_SetColor(Tx1,Blue);
Text_SetStyle(tx1,1,0);
Text_SetBold(tx1,1);
bb = False;
if bb == False and 저[1,1] <= 고[1,1]-0.5 and 고[1,1] > 0 Then
{
bb= true;
box = Box_New_Self(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
Box_SetColor(box,Lime);
Box_SetFill(box,true,70);
}
cond11 = False;
if 저[1,1] >= 저[2,1]-PriceScale*2 and 저[2,1] > 0 Then
{
cond11 = true;
tx11 = Text_New(저[1,3],저[1,4],저[1,1],"●");
Text_SetStyle(tx11,2,0);
Text_SetColor(tx11,Blue);
Text_SetSize(tx11,30);
}
cond12 = False;
if 저[1,1] < DayHigh-0.7 and 저[1,1] <= 저[2,1]+PriceScale*쌍바닥상 and 저[1,1] >= 저[2,1]-PriceScale*쌍바닥하 and 저[2,1] > 0 Then
{
cond12 = true;
tx12 = Text_New(저[1,3],저[1,4],저[1,1],"●");
Text_SetStyle(tx12,2,0);
Text_SetColor(tx12,Green);
Text_SetSize(tx12,20);
}
}
Else If 저[1,1] > LL[loBar] Then
{
저[1,1] = LL[loBar];
저[1,2] = Index - loBar;
저[1,3] = sDate[loBar];
저[1,4] = sTime[loBar];
hiBar = -1;
loBar = -1;
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
Text_SetString(TX1,NumToStr(저[1,1]-고[1,1],2));
Text_SetLocation(TX1,저[1,3],저[1,4],저[1,1]);
if bb == true Then
Box_SetEnd(box,저[1,3],저[1,4],저[1,1]);
Else
{
if bb == False and 저[1,1] <= 고[1,1]-0.5 and 고[1,1] > 0 Then
{
bb= true;
box = Box_New_Self(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
Box_SetColor(box,Lime);
Box_SetFill(box,true,70);
}
}
if cond11 == true Then
{
if 저[1,1] >= 저[2,1]-PriceScale*2 and 저[2,1] > 0 Then
Text_SetLocation(tx11,저[1,3],저[1,4],저[1,1]);
if 저[1,1] < 저[2,1]-PriceScale*2 and 저[2,1] > 0 Then
{
Text_Delete(tx11);
cond11 = False;
}
}
if cond12 == False Then
{
if 저[1,1] < DayHigh-0.7 and 저[1,1] <= 저[2,1]+PriceScale*쌍바닥상 and 저[1,1] >= 저[2,1]-PriceScale*쌍바닥하 and 저[2,1] > 0 Then
{
cond12 = true;
tx12 = Text_New(저[1,3],저[1,4],저[1,1],"●");
Text_SetStyle(tx12,2,0);
Text_SetColor(tx12,Green);
Text_SetSize(tx12,20);
}
}
Else
{
if 저[1,1] < DayHigh-0.7 and 저[1,1] <= 저[2,1]+PriceScale*쌍바닥상 and 저[1,1] >= 저[2,1]-PriceScale*쌍바닥하 and 저[2,1] > 0 Then
{
Text_SetLocation(tx11,저[1,3],저[1,4],저[1,1]);
}
Else
{
Text_Delete(tx12);
cond12 = False;
}
}
}
최종꼭지점 = "저점";
Plot2(저[1,1]);
NoPlot(1);
}