예스스탁
예스스탁 답변
2022-06-15 10:29:41
안녕하세요
예스스탁입니다.
input : StartTime(90000),EndTime(65000);
Input:n(20);
var : Tcond(false),cnt(0);
Var:j(0),HH1(0),HH2(0),HH3(0),HH4(0),
LL1(0),LL2(0),LL3(0),LL4(0),
sumOH(0),sumOL(0),sumO(0),sumH(0),sumL(0),sumO²(0),sumH²(0),sumL²(0);
Array : OO[100](0),HH[100](0),LL[100](0);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
For cnt = 99 downto 1
{
OO[cnt] = OO[cnt-1];
HH[cnt] = HH[cnt-1];
LL[cnt] = LL[cnt-1];
}
OO[0] = O;
HH[0] = H;
LL[0] = L;
sumOH = 0;
sumOL = 0;
sumO = 0;
sumH = 0;
sumL = 0;
sumO² = 0;
sumH² = 0;
sumL² = 0;
for j = 1 to n
{
sumOH = sumOH + OO[j]*HH[j];
sumOL = sumOL + OO[j]*LL[j];
sumO = sumO + OO[j];
sumH = sumH + HH[j];
sumL = sumL + LL[j];
sumO² = sumO² + OO[j]^2;
sumH² = sumH² + HH[j]^2;
sumL² = sumL² + LL[j]^2;
}
HH1 = (n*sumOH - sumO*sumH) / (n*sumO²- sumO^2);
HH2 = (sumH*sumO² - sumO*sumOH) / (n*sumO² - sumO^2);
LL1 = (n*sumOL - sumO*sumL) / (n*sumO² - sumO^2);
LL2 = (sumL*sumO² - sumO*sumOL) / (n*sumO² - sumO^2);
HH3 = HH1 * OO[0] + HH2;
LL3 = LL1 * OO[0] + LL2;
HH4 = sqrt((1/(n*(n-2))) * (n*sumH² - sumH^2 -
((n*sumOH - sumO*sumH)^2 / (n*sumO² - sumO^2))));
LL4 = sqrt((1/(n*(n-2))) * (n*sumL² - sumL^2 -
((n*sumOL - sumO*sumL)^2 / (n*sumO² - sumO^2))));
}
if Tcond == true Then
{
if HH[0] > 0 and H > HH[0] Then
HH[0] = H;
if LL[0] > 0 and L < LL[0] Then
LL[0] = L;
}
plot1(HH3 + 1.68 * HH1);
plot2(HH3 - 1.68 * HH1);
plot3(LL3 + 1.68 * LL1);
plot4(LL3 - 1.68 * LL1);
즐거운 하루되세요
> 흑수돌 님이 쓴 글입니다.
> 제목 : 수식 문의
> 아래 지표를,
input에 입력한
시작시간~종료시간 에 적용되도록 변경하고 싶습니다.
23시간 열리는 해선시장에 적용하기 위함입니다.
부탁드리겠습니다.
감사합니다.
Input:n(20);
Var:j(0),HH1(0),HH2(0),HH3(0),HH4(0),
LL1(0),LL2(0),LL3(0),LL4(0),
sumOH(0),sumOL(0),sumO(0),sumH(0),sumL(0),sumO²(0),sumH²(0),sumL²(0);
if Date[1] < Date then {
sumOH = 0; sumOL = 0; sumO = 0; sumH = 0; sumL = 0; sumO² = 0; sumH² = 0; sumL² = 0;
for j = 1 to n {
sumOH = sumOH + DayOpen(j)*DayHigh(j);
sumOL = sumOL + DayOpen(j)*DayLow(j);
sumO = sumO + DayOpen(j);
sumH = sumH + DayHigh(j);
sumL = sumL + DayLow(j);
sumO² = sumO² + DayOpen(j)^2;
sumH² = sumH² + DayHigh(j)^2;
sumL² = sumL² + DayLow(j)^2;
}
HH1 = (n*sumOH - sumO*sumH) / (n*sumO²- sumO^2);
HH2 = (sumH*sumO² - sumO*sumOH) / (n*sumO² - sumO^2);
LL1 = (n*sumOL - sumO*sumL) / (n*sumO² - sumO^2);
LL2 = (sumL*sumO² - sumO*sumOL) / (n*sumO² - sumO^2);
HH3 = HH1 * DayOpen() + HH2;
LL3 = LL1 * DayOpen() + LL2;
HH4 = sqrt((1/(n*(n-2))) * (n*sumH² - sumH^2 -
((n*sumOH - sumO*sumH)^2 / (n*sumO² - sumO^2))));
LL4 = sqrt((1/(n*(n-2))) * (n*sumL² - sumL^2 -
((n*sumOL - sumO*sumL)^2 / (n*sumO² - sumO^2))));
}
plot1(HH3 + 1.68 * HH1);
plot2(HH3 - 1.68 * HH1);
plot3(LL3 + 1.68 * LL1);
plot4(LL3 - 1.68 * LL1);