예스스탁
예스스탁 답변
2024-10-07 09:58:42
안녕하세요
예스스탁입니다.
1-1 주봉
Input : short(12),long(26),sig(9);
var : idx(0);
Var : Ep1(0), ema1(0), Preema1(0);
Var : Ep2(0), ema2(0), Preema2(0);
Var : Ep3(0),PreMACDS(0),MACDv(0),MACDs(0),MACDo(0);
Ep1 = 2/(short+1);
Ep2 = 2/(long+1);
Ep3 = 2/(sig+1);
if DayOfWeek(bdate) < DayOfWeek(bdate[1]) Then
{
idx = idx + 1;
Preema1 = ema1[1];
Preema2 = ema2[1];
PreMACDS = MACDs[1];
}
if idx <= 1 then {
ema1 = C;
ema2 = C;
MACDv = ema1-ema2;
MACDs = MACDv;
MACDo = MACDv-MACDs;
}
else{
ema1 = C * EP1 + Preema1 * (1-EP1);
ema2 = C * EP2 + Preema2 * (1-EP2);
MACDV = ema1-ema2;
MACDS = MACDV * EP3 + PreMACDS * (1-EP3);
MACDo = MACDv-MACDs;
}
plot1(MACDV);
plot2(MACDs);
plot3(MACDo);
PlotBaseLine1(0);
1-2 월
Input : short(12),long(26),sig(9);
var : idx(0);
Var : Ep1(0), ema1(0), Preema1(0);
Var : Ep2(0), ema2(0), Preema2(0);
Var : Ep3(0),PreMACDS(0),MACDv(0),MACDs(0),MACDo(0);
Ep1 = 2/(short+1);
Ep2 = 2/(long+1);
Ep3 = 2/(sig+1);
if bdate > bdate[1]+30 Then
{
idx = idx + 1;
Preema1 = ema1[1];
Preema2 = ema2[1];
PreMACDS = MACDs[1];
}
if idx <= 1 then {
ema1 = C;
ema2 = C;
MACDv = ema1-ema2;
MACDs = MACDv;
MACDo = MACDv-MACDs;
}
else{
ema1 = C * EP1 + Preema1 * (1-EP1);
ema2 = C * EP2 + Preema2 * (1-EP2);
MACDV = ema1-ema2;
MACDS = MACDV * EP3 + PreMACDS * (1-EP3);
MACDo = MACDv-MACDs;
}
plot1(MACDV);
plot2(MACDs);
plot3(MACDo);
PlotBaseLine1(0);
2
문의하신 내용은 작성이 어렵습니다.
도움을 드리지 못해 죄송합니다.
즐거운 하루되세요
> 해피오 님이 쓴 글입니다.
> 제목 : 수식문의입니다
> 1.지표수식
주봉과 월봉의 Macd(12,26,9)선, 시그널선, 오실레이터를 일봉차트에서 설정할수 있는
수식을 만들어 주세요
2. 종목검색에 따른 검증방법
input : 하락갭율(1.5), 양음봉기준율(0.1), 갭신호기간(10), 음양봉횟수(3);
var : cnt(0), 양봉(False), 음봉(False), GMP(0) ;
양봉 = C >= O *(1+양음봉기준율/100) ;
음봉 = C < O*(1+양음봉기준율/100);
Array : WeekO[20](0),WeekC[20](0);
if DayOfWeek(Bdate) < DayOfWeek(Bdate[1]) Then
{
WeekO[0] = O; #주봉시가
For cnt = 1 to 19
{
WeekO[cnt] = WeekO[cnt-1][1];
WeekC[cnt] = WeekC[cnt-1][1];
}
}
WeekC[0] = C;
if Bdate > Bdate[1]+1000 Then
{
value8 = O; #연봉시가
value9 = value8[1];
}
if Bdate > Bdate[1]+30 Then
{
value10 = O; #월봉시가
value11 = value10[1];
}
#MACD비율선
#========================================================================
Input : shortPeriod(12), longPeriod(26), sPeriod(9),M기준0선(-0.099),M기준낙폭선(-7.5) ;
Var : MACDv(0), MACDsig(0), Macdosc(0), MACDR(0), MsigR(0), MoscR(0) ;
MACDv = MACD(shortPeriod, longPeriod);
MACDsig = ema(MACDv,sPeriod);
macdosc = MACDv-MACDsig;
MACDR = macdv/C*100; #비율MACD선
MsigR = MACDsig/C*100; #비율MACD 시그널선
MoscR = macdosc/C*100; #비율MACD 오실레이터 막대량
Condition1 = C[1] * (1-하락갭율/100) >= O and C[1] > O and O[1] > O ; #하락갭
if Condition1 == true and C <= O Then #하락갭이면서 음봉인 경우
{
if 양봉[1] == true Then
{
Var6 = O[1] ;
Var7 = O ;
}
if 음봉[1] == true Then
{
Var6 = C[1] ;
Var7 = O ;
}
}
if Condition1 == true and C > O Then #하락갭이면서 양봉인 경우
{
if 양봉[1] == true and C <= C[1] Then
{
Var6 = O[1] ;
Var7 = O ;
}
if 양봉[1] == true and C > C[1] Then
{
Var6 = C ;
Var7 = C[1] ;
}
if 음봉[1] == true and C <= C[1] Then
{
Var6 = C[1] ;
Var7 = C ;
}
if 음봉[1] == true and C > C[1] Then
{
Var6 = C[1] ;
Var7 = O ;
}
}
#최저가 위치설정
Condition2 = Lowest(L,60) == Lowest(L,5) or Lowest(Min(C,O),60) == Lowest(Min(C,O),5);
# 일정율의 하락갭이 발생되고(Condition1 == true), 발생된 하락갭은 이전의 하락갭보다 하향되어야 하고(Var7[1] > Var7), 최저가위치(Condition2 == true)에서 발생되었으나 종가가 주봉의 시가보다 낮거나 macd오실레이터량이 하락하거나 전일종가보다 낮은 경우
Condition3 = Var7 > 0 and Condition1 == true and Var7[1] > Var7 and C >= Var7 and C > O and Condition2 == true and ( C < WeekO[0] or C < C[1] or MoscR < MoscR[1] );
var : OO(0),NN(0);
if Condition3 == true Then
{
OO = O;
NN = 0;
}
Else
{
if OO > 0 and C > O and C[1] < O[1] Then
{
NN = NN+1;
if NN >= 3 and
O < OO and
( C > WeekO[0] or C > C[1] or MoscR > MoscR[1]) Then
FinD(1);
}
}
상기 종목검색에 따른 검색시에 종가매수를 하여 20일간 보유한다고 가정하는 경우의
최고수익율과 달성기간, 최대손실율과 달성기간, 매수후 5일간의 수익율(고가매도가정)드에 대한 데이터검증할수 있는 수식을 부탁드립니다.