예스스탁
예스스탁 답변
2025-02-11 14:35:02
안녕하세요
예스스탁입니다.
1
input : Period(20),weight(6);
var : smma(0),lsma(0);
var : sub(0),p(0),d(0),sum(0),divider(0),i(0),lwma(0);
smma = iff(IsNan(smma[1]) == true, ma(c, Period) , (smma[1] * (Period - 1) + c) / Period);
lsma = LRL(c, Period);
sub = (weight/period)-1;
sum = 0;
divider = 0;
for i = 0 to period-1
{
p = c[i] * ((weight-i)-sub);
d = (weight-i)-sub;
sum = sum + p;
divider = divider + d;
}
lwma = sum / divider;
plot1(smma);
plot2(lsma);
plot3(lwma);
2
input : ntime1(10),Period(20),weight(6);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : ssum(0),smma(0),smma1(0);
var : sum1(0),sum2(0),sum3(0),sum4(0),mav1(0),mav2(0),mav3(0),mav4(0),LRLv(0);
var : sub(0),p(0),d(0),sum(0),divider(0),i(0),lwma(0);
Array : C1[100](0),AccumValue[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%ntime1;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then
{
AccumValue[0] = AccumValue[0]+1;
for cnt = 99 downto 1
{
C1[cnt] = C1[cnt-1][1];
AccumValue[cnt] = AccumValue[cnt-1][1];
}
smma1 = smma[1];
}
C1[0] = C;
if C1[Period-1] > 0 Then
{
if C1[Period] == 0 Then
{
ssum = 0;
For cnt = 0 to Period-1
{
ssum = ssum + C1[cnt];
}
smma = ssum/Period;
}
Else
{
if smma1 > 0 Then
smma = (smma1 * (Period - 1) + C1[0]) / Period;
}
Plot1(smma);
}
if C1[Period] > 0 Then
{
sum1 = 0;
sum2 = 0;
sum3 = 0;
sum4 = 0;
for cnt = 0 to Period-1
{
sum1 = sum1 + AccumValue[cnt];
sum2 = sum2 + C1[cnt];
sum3 = sum3 + C1[cnt]*AccumValue[cnt];
sum4 = sum4 + AccumValue[cnt]^2;
}
mav1 = sum1/Period;
mav2 = sum2/Period;
mav3 = sum3/Period;
mav4 = sum4/Period;
LRLv = (mav3 - mav1 * mav2) /(mav4 - (mav1^2)) * (AccumValue[0] - mav1) + mav2;
plot2(LRLv);
}
if C1[Period] > 0 Then
{
sub = (weight/period)-1;
sum = 0;
divider = 0;
for i = 0 to period-1
{
p = c1[i] * ((weight-i)-sub);
d = (weight-i)-sub;
sum = sum + p;
divider = divider + d;
}
lwma = sum / divider;
plot3(lwma);
}
}
즐거운 하루되세요
> 해암 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> input : Period(20),weight(6);
var : sma(0),lsma(0);
var : sub(0),p(0),d(0),sum(0),divider(0),i(0),lwma(0);
sma = ma(C,Period);
lsma = LRL(c, Period);
sub = (weight/period)-1;
sum = 0;
divider = 0;
for i = 0 to period-1
{
p = c[i] * ((weight-i)-sub);
d = (weight-i)-sub;
sum = sum + p;
divider = divider + d;
}
lwma = sum / divider;
plot1(sma);
plot2(lsma);
plot3(lwma);
============================
1. 위의 수식에 대해 감사합니다.
위의 수식에서 sma를 smoothed moving average(혹은 smoothed simple moving average)로
바꾸고자 합니다.
2. 1번에서 만들어진 이평선들을 10분봉에 적용하고, 10분봉에서의 이평선을 틱봉차트에
나타내고자 합니다. 어떻게 작성하는지요? 분봉의 기간값(10분 30분 60분 처럼)과 각 이평선의 조건값은 수정가능하게 부탁드립니다.
다시 한번 감사드립니다. 수고하세요!