커뮤니티
안녕하세요......
2018-04-10 01:54:25
212
글번호 118058
안녕하세요.
수고 많으 십니다.
1).2). 시스템식 입니다.
1),위 파일처럼 상승 과 하락 할 때 틱 수를 구현 하고싶습니다.
단 5 이평선이 200 이평선 관통하고 상승 할 때와 하락 할 때
10틱씩 구현 하고 싶습니다.
2),아래 수식에서 상승 과 할 때 틱 수를 10틱씩 구현 하고 싶습니다.
감사 합니다. 수고 하세요.......
Input:n(10);
Var:j(0),고가기울기(0),고가절편(0),고가예상치(0),고가표준오차(0),
저가기울기(0),저가절편(0),저가예상치(0),저가표준오차(0),trend(0),
sumOH(0),sumOL(0),sumO(0),sumH(0),sumL(0),sumO²(0),sumH²(0),sumL²(0);
if bDate[1] < bDate 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;
}
#==========================================================================#
# 선형회귀방정식 #
#==========================================================================#
# nΣxy - (Σx)(Σy) #
# 기울기 a = --------------------- #
# nΣx²- (Σx)² #
# #
# = (n*sum(xy) - sum(x)*sum(y)) / (n*sum(x^2) - sum(x)^2) #
# #
# (Σy)(Σx²)-(Σx)(Σxy) #
# 절편 b = --------------------------- #
# nΣx²- (Σx)² #
# #
# = (sum(y)*sum(x^2) - sum(x)*sum(xy)) / (n*sum(x^2) - sum(x)^2) #
#==========================================================================#
고가기울기 = (n*sumOH - sumO*sumH) / (n*sumO²- sumO^2);
고가절편 = (sumH*sumO² - sumO*sumOH) / (n*sumO² - sumO^2);
저가기울기 = (n*sumOL - sumO*sumL) / (n*sumO² - sumO^2);
저가절편 = (sumL*sumO² - sumO*sumOL) / (n*sumO² - sumO^2);
고가예상치 = 고가기울기 * DayOpen() + 고가절편;
저가예상치 = 저가기울기 * DayOpen() + 저가절편;
#==========================================================================#
# 표준오차 공식 #
#==========================================================================#
# _______________________________________________________ #
# / 1 [nΣxy - (Σx)(Σy)]² #
# Sxy = / [ ------- ][nΣy²- (Σy)²- ----------------------- ] #
# √ n(n-2) nΣx²- (Σx)² #
# #
# = sqrt((1/(n*(n-2))) * (n*sum(y^2) - sum(y)^2 - #
# ((n*sum(x*y) - sum(x)*sum(y))^2 / (n*sum(x^2) - sum(x)^2)))) #
#==========================================================================#
고가표준오차 = sqrt((1/(n*(n-2))) * (n*sumH² - sumH^2 -
((n*sumOH - sumO*sumH)^2 / (n*sumO² - sumO^2))));
저가표준오차 = sqrt((1/(n*(n-2))) * (n*sumL² - sumL^2 -
((n*sumOL - sumO*sumL)^2 / (n*sumO² - sumO^2))));
}
var1 = ema(h,10);
var2= ema(l,10);
var7=var1+(var1-ema(var1,10));
var8=var2+(var2-ema(var2,10));
if var7[2] > var7[1] and var7[1] < var7 then trend=1;
if var7[2] < var7[1] and var7[1] > var7 then trend=0;
if trend == 1 and trend[1] != 1 Then
buy();
if trend == 0 and trend[1] != 0 Then
sell();
- 1. 2018-04-09_18-16-07.jpg (0.12 MB)
답변 1
예스스탁 예스스탁 답변
2018-04-10 11:23:59
안녕하세요
예스스탁입니다.
1
var1 = ma(C,5);
var2 = ma(C,200);
if crossup(var1,var2) Then
buy();
if CrossDown(var1,var2) Then
sell();
var : RR(0),tx(0);
if MarketPosition == 1 Then{
rr = Floor((highest(H,BarsSinceEntry)-EntryPrice)/(PriceScale*10));
if rr > rr[1] Then{
tx = Text_New(sdate,stime,H+PriceScale*1,NumToStr(RR*10,0)+"틱");
Text_SetStyle(tx,2,2);
}
}
if MarketPosition == -1 Then{
rr = Floor((EntryPrice-lowest(L,BarsSinceEntry))/(PriceScale*10));
if rr > rr[1] Then{
tx = Text_New(sdate,stime,L-PriceScale*1,NumToStr(RR*10,0)+"틱");
Text_SetStyle(tx,2,2);
}
}
2
Input:n(10);
Var:j(0),고가기울기(0),고가절편(0),고가예상치(0),고가표준오차(0),
저가기울기(0),저가절편(0),저가예상치(0),저가표준오차(0),trend(0),
sumOH(0),sumOL(0),sumO(0),sumH(0),sumL(0),sumO²(0),sumH²(0),sumL²(0);
if bDate[1] < bDate 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;
}
#==========================================================================#
# 선형회귀방정식 #
#==========================================================================#
# nΣxy - (Σx)(Σy) #
# 기울기 a = --------------------- #
# nΣx²- (Σx)² #
# #
# = (n*sum(xy) - sum(x)*sum(y)) / (n*sum(x^2) - sum(x)^2) #
# #
# (Σy)(Σx²)-(Σx)(Σxy) #
# 절편 b = --------------------------- #
# nΣx²- (Σx)² #
# #
# = (sum(y)*sum(x^2) - sum(x)*sum(xy)) / (n*sum(x^2) - sum(x)^2) #
#==========================================================================#
고가기울기 = (n*sumOH - sumO*sumH) / (n*sumO²- sumO^2);
고가절편 = (sumH*sumO² - sumO*sumOH) / (n*sumO² - sumO^2);
저가기울기 = (n*sumOL - sumO*sumL) / (n*sumO² - sumO^2);
저가절편 = (sumL*sumO² - sumO*sumOL) / (n*sumO² - sumO^2);
고가예상치 = 고가기울기 * DayOpen() + 고가절편;
저가예상치 = 저가기울기 * DayOpen() + 저가절편;
#==========================================================================#
# 표준오차 공식 #
#==========================================================================#
# _______________________________________________________ #
# / 1 [nΣxy - (Σx)(Σy)]² #
# Sxy = / [ ------- ][nΣy²- (Σy)²- ----------------------- ] #
# √ n(n-2) nΣx²- (Σx)² #
# #
# = sqrt((1/(n*(n-2))) * (n*sum(y^2) - sum(y)^2 - #
# ((n*sum(x*y) - sum(x)*sum(y))^2 / (n*sum(x^2) - sum(x)^2)))) #
#==========================================================================#
고가표준오차 = sqrt((1/(n*(n-2))) * (n*sumH² - sumH^2 -
((n*sumOH - sumO*sumH)^2 / (n*sumO² - sumO^2))));
저가표준오차 = sqrt((1/(n*(n-2))) * (n*sumL² - sumL^2 -
((n*sumOL - sumO*sumL)^2 / (n*sumO² - sumO^2))));
}
var1 = ema(h,10);
var2= ema(l,10);
var7=var1+(var1-ema(var1,10));
var8=var2+(var2-ema(var2,10));
if var7[2] > var7[1] and var7[1] < var7 then trend=1;
if var7[2] < var7[1] and var7[1] > var7 then trend=0;
if trend == 1 and trend[1] != 1 Then
buy();
if trend == 0 and trend[1] != 0 Then
sell();
var : RR(0),tx(0);
if MarketPosition == 1 Then{
rr = Floor((highest(H,BarsSinceEntry)-EntryPrice)/(PriceScale*10));
if rr > rr[1] Then{
tx = Text_New(sdate,stime,H+PriceScale*1,NumToStr(RR*10,0)+"틱");
Text_SetStyle(tx,2,2);
}
}
if MarketPosition == -1 Then{
rr = Floor((EntryPrice-lowest(L,BarsSinceEntry))/(PriceScale*10));
if rr > rr[1] Then{
tx = Text_New(sdate,stime,L-PriceScale*1,NumToStr(RR*10,0)+"틱");
Text_SetStyle(tx,2,2);
}
}
즐거운 하루되세요
> 천종 님이 쓴 글입니다.
> 제목 : 안녕하세요......
> 안녕하세요.
수고 많으 십니다.
1).2). 시스템식 입니다.
1),위 파일처럼 상승 과 하락 할 때 틱 수를 구현 하고싶습니다.
단 5 이평선이 200 이평선 관통하고 상승 할 때와 하락 할 때
10틱씩 구현 하고 싶습니다.
2),아래 수식에서 상승 과 할 때 틱 수를 10틱씩 구현 하고 싶습니다.
감사 합니다. 수고 하세요.......
Input:n(10);
Var:j(0),고가기울기(0),고가절편(0),고가예상치(0),고가표준오차(0),
저가기울기(0),저가절편(0),저가예상치(0),저가표준오차(0),trend(0),
sumOH(0),sumOL(0),sumO(0),sumH(0),sumL(0),sumO²(0),sumH²(0),sumL²(0);
if bDate[1] < bDate 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;
}
#==========================================================================#
# 선형회귀방정식 #
#==========================================================================#
# nΣxy - (Σx)(Σy) #
# 기울기 a = --------------------- #
# nΣx²- (Σx)² #
# #
# = (n*sum(xy) - sum(x)*sum(y)) / (n*sum(x^2) - sum(x)^2) #
# #
# (Σy)(Σx²)-(Σx)(Σxy) #
# 절편 b = --------------------------- #
# nΣx²- (Σx)² #
# #
# = (sum(y)*sum(x^2) - sum(x)*sum(xy)) / (n*sum(x^2) - sum(x)^2) #
#==========================================================================#
고가기울기 = (n*sumOH - sumO*sumH) / (n*sumO²- sumO^2);
고가절편 = (sumH*sumO² - sumO*sumOH) / (n*sumO² - sumO^2);
저가기울기 = (n*sumOL - sumO*sumL) / (n*sumO² - sumO^2);
저가절편 = (sumL*sumO² - sumO*sumOL) / (n*sumO² - sumO^2);
고가예상치 = 고가기울기 * DayOpen() + 고가절편;
저가예상치 = 저가기울기 * DayOpen() + 저가절편;
#==========================================================================#
# 표준오차 공식 #
#==========================================================================#
# _______________________________________________________ #
# / 1 [nΣxy - (Σx)(Σy)]² #
# Sxy = / [ ------- ][nΣy²- (Σy)²- ----------------------- ] #
# √ n(n-2) nΣx²- (Σx)² #
# #
# = sqrt((1/(n*(n-2))) * (n*sum(y^2) - sum(y)^2 - #
# ((n*sum(x*y) - sum(x)*sum(y))^2 / (n*sum(x^2) - sum(x)^2)))) #
#==========================================================================#
고가표준오차 = sqrt((1/(n*(n-2))) * (n*sumH² - sumH^2 -
((n*sumOH - sumO*sumH)^2 / (n*sumO² - sumO^2))));
저가표준오차 = sqrt((1/(n*(n-2))) * (n*sumL² - sumL^2 -
((n*sumOL - sumO*sumL)^2 / (n*sumO² - sumO^2))));
}
var1 = ema(h,10);
var2= ema(l,10);
var7=var1+(var1-ema(var1,10));
var8=var2+(var2-ema(var2,10));
if var7[2] > var7[1] and var7[1] < var7 then trend=1;
if var7[2] < var7[1] and var7[1] > var7 then trend=0;
if trend == 1 and trend[1] != 1 Then
buy();
if trend == 0 and trend[1] != 0 Then
sell();
다음글
이전글