예스스탁
예스스탁 답변
2023-01-02 15:26:34
안녕하세요
예스스탁입니다.
1
input : P(5);
var : S1(0),D1(0),vv(0),sTM(0),eTM(0);
Var : SSc(0),TSc(0),second(0);
var : HH(0),MM(0),SS(0),str(""),tx(0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = Bdate;
}
if D1 > 0 then
{
if sdate == D1 Then
sTM = TimeToMinutes(stime)-S1;
Else
sTM = TimeToMinutes(stime)+1440-S1;
if date == D1 Then
eTM = TimeToMinutes(time)-S1;
Else
eTM = TimeToMinutes(time)+1440-S1;
var1 = sTM*60;
var2 = FracPortion(stime/100)*100;
SSc = var1+var2;
value1 = eTM*60;
value2 = FracPortion(time/100)*100;
TSc = value1+value2;
Second = TSc-SSc;
HH = Floor(second/3600);
MM = Floor((second%3600)/60);
SS = Floor(second%60);
str = "";
if HH > 0 Then
{
if HH >= 10 Then
str = str + NumToStr(HH,0)+":";
Else
str = str + "0"+NumToStr(HH,0)+":";
}
Else
str = str + "00"+":";
if MM > 0 Then
{
if MM >= 10 Then
str = str + NumToStr(MM,0)+":";
Else
str = str + "0"+NumToStr(MM,0)+":";
}
Else
str = str + "00"+":";
if SS > 0 Then
{
if SS >= 10 Then
str = str + NumToStr(SS,0);
Else
Str = str + "0"+NumToStr(SS,0);
}
Else
str = str + "00";
tx = Text_New(sDate,sTime,h,str);
Text_SetStyle(tx,0,1);
}
2
input:length(10),글자크기(8);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),
Text1(0),처리구분("");
Array:고점[10,2](0),저점[10,2](0); //가격,위치
처리구분 = "";
If Highest(H,length) == H and lastHiVal <> H and
Lowest(L,length) == L and lastLoVal <> L Then
{
If 저점[1,1] > L Then 처리구분 = "저점처리";
If 고점[1,1] < H Then 처리구분 = "고점처리";
}
Else If Highest(H,length) == H and lastHiVal <> H Then
처리구분 = "고점처리";
Else If Lowest(L,length) == L and lastLoVal <> L Then
처리구분 = "저점처리";
If 처리구분 == "고점처리" Then
{
lastHiVal = H;
If 고점[1,2] < 저점[1,2] Then
{
For j = 10 DownTo 2
{
고점[j,1] = 고점[j-1,1];
고점[j,2] = 고점[j-1,2];
}
}
If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then
{
고점[1,1] = H;
고점[1,2] = Index;
sBar = Index - 저점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and
TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],
sDate[eBar],sTime[eBar],고점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],
"고저차:"+NumToStr((고점[1,1]-저점[1,1]),2)+NewLine+
"고-0.00:"+NumToStr(고점[1,1],2)+NewLine+
"고-1.25:"+NumToStr(고점[1,1]-1.25,2)+NewLine+
"고-2.50:"+NumToStr(고점[1,1]-2.50,2)+NewLine+
"고-3.75:"+NumToStr(고점[1,1]-3.75,2)+NewLine+
"고-5.00:"+NumToStr(고점[1,1]-5.00,2)+NewLine+
"고-6.25:"+NumToStr(고점[1,1]-6.25,2)+NewLine+
"고-7.50:"+NumToStr(고점[1,1]-7.50,2)+NewLine+
"고-8.75:"+NumToStr(고점[1,1]-8.75,2)+NewLine);
Text_SetStyle(Text1, 2, 1);
Text_SetSize(text1,글자크기);
}
}
If 처리구분 == "저점처리" Then
{
lastLoVal = L;
If 저점[1,2] < 고점[1,2] then
{
For j = 10 DownTo 2
{
저점[j,1] = 저점[j-1,1];
저점[j,2] = 저점[j-1,2];
}
}
If 저점[1,2] < 고점[1,2] or 저점[1,1] > L then
{
저점[1,1] = L;
저점[1,2] = Index;
sBar = Index - 고점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and
TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],
sDate[eBar],sTime[eBar],저점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],
"고저차:"+NumToStr((고점[1,1]-저점[1,1]),2)+NewLine+
"저+8.75:"+NumToStr(저점[1,1]+8.75,2)+NewLine+
"저+7.50:"+NumToStr(저점[1,1]+7.50,2)+NewLine+
"저+6.25:"+NumToStr(저점[1,1]+6.25,2)+NewLine+
"저+5.00:"+NumToStr(저점[1,1]+5.00,2)+NewLine+
"저+3.75:"+NumToStr(저점[1,1]+3.75,2)+NewLine+
"저+2.50:"+NumToStr(저점[1,1]+2.50,2)+NewLine+
"저+1.25:"+NumToStr(저점[1,1]+1.25,2)+NewLine+
"저+0.00:"+NumToStr(저점[1,1],2));
Text_SetStyle(Text1, 2, 0);
Text_SetSize(text1,글자크기);
}
}
TL_SetSize(TL1,3);
TL_SetColor(TL1,Yellow);
즐거운 하루되세요
> 호정0688 님이 쓴 글입니다.
> 제목 : 지표
> 항상감사합니다.
1]챠트에 시간표시 부탁드립니다
5분봉챠트라면
5분시가에서 종가까지 시간이 현재봉위치오른쪽에 표시 부탁드립니다.
시,분,초
2]위아래 저점에서 고점까지가격은 표시됩니다.
1.25부터~8.75까지 가격표시도 될까요
저점)0+1.25
2.5
3.75
5.00
6.25
7.50
8.75
고점)100
input:length(10),글자크기(8);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),
Text1(0),처리구분("");
Array:고점[10,2](0),저점[10,2](0); //가격,위치
처리구분 = "";
If Highest(H,length) == H and lastHiVal <> H and
Lowest(L,length) == L and lastLoVal <> L Then
{
If 저점[1,1] > L Then 처리구분 = "저점처리";
If 고점[1,1] < H Then 처리구분 = "고점처리";
}
Else If Highest(H,length) == H and lastHiVal <> H Then
처리구분 = "고점처리";
Else If Lowest(L,length) == L and lastLoVal <> L Then
처리구분 = "저점처리";
If 처리구분 == "고점처리" Then
{
lastHiVal = H;
If 고점[1,2] < 저점[1,2] Then
{
For j = 10 DownTo 2
{
고점[j,1] = 고점[j-1,1];
고점[j,2] = 고점[j-1,2];
}
}
If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then
{
고점[1,1] = H;
고점[1,2] = Index;
sBar = Index - 저점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and
TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],
sDate[eBar],sTime[eBar],고점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],NumToStr(고점[1,1],2)+NewLine+NumToStr((고점[1,1]-저점[1,1]),2));
Text_SetStyle(Text1, 2, 1);
Text_SetSize(text1,글자크기);
}
}
If 처리구분 == "저점처리" Then
{
lastLoVal = L;
If 저점[1,2] < 고점[1,2] then
{
For j = 10 DownTo 2
{
저점[j,1] = 저점[j-1,1];
저점[j,2] = 저점[j-1,2];
}
}
If 저점[1,2] < 고점[1,2] or 저점[1,1] > L then
{
저점[1,1] = L;
저점[1,2] = Index;
sBar = Index - 고점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and
TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],
sDate[eBar],sTime[eBar],저점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],NumToStr(저점[1,1],2)+NewLine+NumToStr((고점[1,1]-저점[1,1]),2));
Text_SetStyle(Text1, 2, 0);
Text_SetSize(text1,글자크기);
}
}
TL_SetSize(TL1,3);
TL_SetColor(TL1,Yellow);