예스스탁
예스스탁 답변
2022-05-26 15:14:39
안녕하세요
예스스탁입니다.
1
1번 내용은 고점과 저점의 판단기준이 필요합니다.
별도로 언급이 없으셔서 게시판에서 많이 사용하시는 지그재그식을
기준으로 작성해 드립니다.
input:length(12);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),Text1(0),process(0),T(0);
Array:HH[10,2](0),LL[10,2](0);
process = 0;
If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then
{
If LL[1,1] > L Then process = -1;
If HH[1,1] < H Then process = 1;
}
Else If Highest(H,length) == H and lastHiVal <> H Then process = 1;
Else If Lowest(L,length) == L and lastLoVal <> L Then process = -1;
If process == 1 Then
{
T = 1;
lastHiVal = H;
If HH[1,2] < LL[1,2] Then
{
For j = 10 DownTo 2
{
HH[j,1] = HH[j-1,1];
HH[j,2] = HH[j-1,2];
}
}
If HH[1,2] < LL[1,2] or HH[1,1] < H Then
{
HH[1,1] = H;
HH[1,2] = Index;
sBar = Index - LL[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
if LL[1,1] > 0 Then
{
TL1 = TL_New(sDate[sBar],sTime[sBar],LL[1,1],sDate[eBar],sTime[eBar],HH[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],HH[1,1],NewLine+NumToStr(HH[1,1],2));
Text_SetStyle(Text1, 2, 1);
}
Else
{
Text_Delete(text1);
Text1 = Text_New(sDate[eBar],sTime[eBar],HH[1,1],NewLine+NumToStr(HH[1,1],2));
Text_SetStyle(Text1, 2, 1);
}
Text_SetStyle(Text1, 2, 1);
}
}
If process == -1 Then
{
T = -1;
lastLoVal = L;
If LL[1,2] < HH[1,2] Then
{
For j = 10 DownTo 2
{
LL[j,1] = LL[j-1,1];
LL[j,2] = LL[j-1,2];
}
}
If LL[1,2] < HH[1,2] or LL[1,1] > L Then
{
LL[1,1] = L;
LL[1,2] = Index;
sBar = Index - HH[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
if HH[1,1] > 0 Then
{
TL1 = TL_New(sDate[sBar],sTime[sBar],HH[1,1],sDate[eBar],sTime[eBar],LL[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],LL[1,1],NumToStr(LL[1,1],2));
Text_SetStyle(Text1, 2, 0);
}
Else
{
Text_Delete(text1);
Text1 = Text_New(sDate[eBar],sTime[eBar],LL[1,1],NumToStr(LL[1,1],2));
Text_SetStyle(Text1, 2, 0);
}
}
}
if T == 1 and C > HH[2,1] and LL[1,1] > LL[2,1] Then
Buy();
if T == -1 and C < LL[2,1] and HH[1,1] < HH[2,1] Then
Sell();
2
input : P1(5),P2(10);
var : T(0),hh(0),hh1(0),ll(0),ll1(0);
var1 = ma(C,P1);
Var2 = ma(C,P2);
if CrossUp(var1,Var2) Then
{
T = 1;
hh = h;
hh1 = hh[1];
}
if CrossDown(var1,Var2) Then
{
T = -1;
ll = h;
ll1 = ll[1];
}
if T == 1 Then
{
if h > hh Then
hh = h;
if c > hh1[1] and ll > ll1 and ll1 > 0 then
buy();
}
if T == -1 Then
{
if l < ll Then
ll = l;
if c < ll1[1] and hh < hh1 and hh1 > 0 then
Sell();
}
즐거운 하루되세요
> feelkdn 님이 쓴 글입니다.
> 제목 : 수식문의드립니다
> 안녕하세요
1. 그림에서처럼 지수에서 고점지점이 하락하는 모습을 보이며 두 고점 사이의 최저점을 뚫고 지수가 하락할때 매도.
반대로 두 저점지점이 상승하는 모습을 보이며 두 저점 사이의 최고점을 뚫고 지수가 상승할때 매수하는 로직
2. 위와 같은 형태인데 2번의 5일 이평선이 10일 이평선을 크로스 하락된 지점이 하락하며
두 크로스된 지점 사이의 최저점을 뚫고 지수가 하락할때 매도
반대로 두 이평선의 크로스 상승된 지점이 상승하는 모습을 보이며 두 크로스된 사이의 최고점을 뚫고 지수가 상승할때 매수
예스랭기지를 아직 익히는중이라 이 두 로직 만들어주실수있을까요?
참고해서 사용하도록하겠습니다
감사합니다