예스스탁
예스스탁 답변
2020-07-14 16:35:41
안녕하세요
예스스탁입니다.
Input : ntime(60),Length1(5),Length2(20);
var : S1(0),D1(0),TM(0),TF(0);
Var : TLen1(0),TLen2(0),i1(0),i2(0),cnt(0);
var : Hsum1(0),Hsum2(0),Havg1(0),Hma1(0);
var : Lsum1(0),Lsum2(0),Lavg1(0),Lma1(0);
var : HLsum1(0),HLsum2(0),HLavg1(0),HLma1(0);
var : Hcum1(0),Hcum2(0),Havg2(0),Hma2(0);
var : Lcum1(0),Lcum2(0),Lavg2(0),Lma2(0);
var : HLcum1(0),HLcum2(0),HLavg2(0),HLma2(0);
array : HH[100](0),LL[100](0);
TLen1 = Ceiling((Length1 + 1) * .5);
TLen2 = Ceiling((Length2 + 1) * .5);
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%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
HH[0] = h;
LL[0] = l;
for cnt = 1 to 99
{
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
}
}
if HH[0] > 0 and H > HH[0] then
HH[0] = H;
if LL[0] > 0 and L < LL[0] then
LL[0] = L;
if HH[TLen1*2] > 0 and LL[TLen1*2] > 0 then
{
Hsum2 = 0;
Lsum2 = 0;
HLsum2 = 0;
for i1 = 0 to TLen1-1
{
Hsum1 = 0;
Lsum1 = 0;
HLsum1 = 0;
for i2 = i1+0 to TLen1-1+i1
{
Hsum1 = Hsum1 + HH[i2];
Lsum1 = Lsum1 + LL[i2];
HLsum1 = HLsum1 + (HH[i2]+LL[i2])/2;
}
Havg1 = Hsum1/TLen1;
Hsum2 = Hsum2 + Havg1;
Lavg1 = Lsum1/TLen1;
Lsum2 = Lsum2 + Lavg1;
HLavg1 = HLsum1/TLen1;
HLsum2 = HLsum2 + HLavg1;
}
Hma1 = Hsum2/TLen1;
Lma1 = Lsum2/TLen1;
HLma1 = HLsum2/TLen1;
}
if HH[TLen2*2] > 0 and LL[TLen2*2] > 0 then
{
Hcum2 = 0;
Lcum2 = 0;
HLcum2 = 0;
for i1 = 0 to TLen2-1
{
Hcum1 = 0;
Lcum1 = 0;
HLcum1 = 0;
for i2 = i1+0 to TLen2-1+i1
{
Hcum1 = Hcum1 + HH[i2];
Lcum1 = Lcum1 + LL[i2];
HLcum1 = HLcum1 + (HH[i2]+LL[i2])/2;
}
Havg2 = Hcum1/TLen2;
Hcum2 = Hcum2 + Havg2;
Lavg2 = Lcum1/TLen2;
Lcum2 = Lcum2 + Lavg2;
HLavg2 = HLcum1/TLen2;
HLcum2 = HLcum2 + HLavg2;
}
Hma2 = Hcum2/TLen2;
Lma2 = Lcum2/TLen2;
HLma2 = HLcum2/TLen2;
}
Plot1(Hma1, "고가삼각가중1");
Plot2(Hma2, "고가삼각가중2");
Plot3(Lma1, "저가삼각가중1");
Plot4(Lma2, "저가삼각가중2");
Plot5(HLma1, "중간삼각가중1");
Plot6(HLma2, "중간삼각가중2");
Plot7(Hma2+abs(Hma2-Lma2), "20고가+진동폭");
Plot8(Lma2-abs(Hma2-Lma2), "20저가-진동폭");
}
즐거운 하루되세요
> 에리카 님이 쓴 글입니다.
> 제목 : 지표
>
하나만 더 수정 해주세요
10분에 60분봉의 가중도 알려 주세요
Input : Length1(5),Length2(20);
Var : TLen1(0),TLen2(0),i1(0),i2(0);
var : Hsum1(0),Hsum2(0),Havg1(0),Hma1(0);
var : Lsum1(0),Lsum2(0),Lavg1(0),Lma1(0);
var : HLsum1(0),HLsum2(0),HLavg1(0),HLma1(0);
var : Hcum1(0),Hcum2(0),Havg2(0),Hma2(0);
var : Lcum1(0),Lcum2(0),Lavg2(0),Lma2(0);
var : HLcum1(0),HLcum2(0),HLavg2(0),HLma2(0);
TLen1 = Ceiling((Length1 + 1) * .5);
TLen2 = Ceiling((Length2 + 1) * .5);
Hsum2 = 0;
Lsum2 = 0;
HLsum2 = 0;
for i1 = 0 to TLen1-1
{
Hsum1 = 0;
Lsum1 = 0;
HLsum1 = 0;
for i2 = i1+0 to TLen1-1+i1
{
Hsum1 = Hsum1 + DayHigh(i2);
Lsum1 = Lsum1 + DayLow(i2);
HLsum1 = HLsum1 + (DayHigh(i2)+DayLow(i2))/2;
}
Havg1 = Hsum1/TLen1;
Hsum2 = Hsum2 + Havg1;
Lavg1 = Lsum1/TLen1;
Lsum2 = Lsum2 + Lavg1;
HLavg1 = HLsum1/TLen1;
HLsum2 = HLsum2 + HLavg1;
}
Hma1 = Hsum2/TLen1;
Lma1 = Lsum2/TLen1;
HLma1 = HLsum2/TLen1;
Hcum2 = 0;
Lcum2 = 0;
HLcum2 = 0;
for i1 = 0 to TLen2-1
{
Hcum1 = 0;
Lcum1 = 0;
HLcum1 = 0;
for i2 = i1+0 to TLen2-1+i1
{
Hcum1 = Hcum1 + DayHigh(i2);
Lcum1 = Lcum1 + DayLow(i2);
HLcum1 = HLcum1 + (DayHigh(i2)+DayLow(i2))/2;
}
Havg2 = Hcum1/TLen2;
Hcum2 = Hcum2 + Havg2;
Lavg2 = Lcum1/TLen2;
Lcum2 = Lcum2 + Lavg2;
HLavg2 = HLcum1/TLen2;
HLcum2 = HLcum2 + HLavg2;
}
Hma2 = Hcum2/TLen2;
Lma2 = Lcum2/TLen2;
HLma2 = HLcum2/TLen2;
Plot1(Hma1, "고가삼각가중1");
Plot2(Hma2, "고가삼각가중2");
Plot3(Lma1, "저가삼각가중1");
Plot4(Lma2, "저가삼각가중2");
Plot5(HLma1, "중간삼각가중1");
Plot6(HLma2, "중간삼각가중2");
Plot7(Hma2+abs(Hma2-Lma2), "20고가+진동폭");
Plot8(Lma2-abs(Hma2-Lma2), "20저가-진동폭");