답변완료
문의드립니다.
len=input(40)
o=ema(open,len)
c=ema(close,len)
h=ema(high,len)
l=ema(low,len)
haclose = (o+h+l+c)/4
haopen = na(haopen[1]) ? (o + c)/2 : (haopen[1] + haclose[1]) / 2
hahigh = max (h, max(haopen,haclose))
halow = min (l, min(haopen,haclose))
len2=input(40)
o2=ema(haopen, len2)
c2=ema(haclose, len2)
h2=ema(hahigh, len2)
l2=ema(halow, len2)
col=o2>c2 ? red : lime
plotcandle(o2, h2, l2, c2, title="hs", color=col)
수식 변환 문의드립니다.
감사합니다.
2020-04-29
967
글번호 138502
강조
답변완료
문의드립니다.
short = input(3,minval=1), long = input(10,minval=1)
osc = ema(accdist, short) - ema(accdist, long)
plot(osc, color=red, style=line, linewidth=2)
hline(0, color=black, linestyle=solid)
poscross = osc > 0 and osc[1] < 0
plotshape(poscross, style = shape.cross, color=black, location=location.top, title = "CCS")
항상 도움주셔서 감사합니다.
좋은 하루 되세요
2020-04-29
964
글번호 138500
지표
답변완료
재문의 드립니다.
90틱에 5분봉 20선 이평선을 수평으로 넣는것 문의 드렸는데
input : ntime(5),P(50);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0),tl(0);
Array : C1[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%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
{
for cnt = 1 to 49
{
C1[cnt] = C1[cnt-1][1];
}
}
C1[0] = C;
if C1[P] > 0 then
{
sum1 = 0;
for cnt = 0 to P-1
{
sum1 = sum1+C1[cnt];
}
mav1 = sum1/P;
plot1(mav1);
}
}
tl = TL_New(sdate,stime,mav1,NextBarSdate,NextBarStime,mav1);
TL_SetExtleft(tl,true);
TL_SetExtRight(tl,true);
이렇게 주셔서 했는데 아무것도 나오지 않습니다.
챠트는 90틱 챠트에 지표 불러오기 했습니다.
그런데 아무것도 나오지 않네요.
2020-04-29
998
글번호 138498
지표
답변완료
서식 부탁 드립니다
항상 감사합니다
아래와 같은 의도인데 매수매도 신호가 나오지 않고
신호가 나와도 한번만 나오고 말아서
최고값 최저값이 바뀔때마다
매수매도 신호도 계속 나오도록 부탁드립니다
1)번 가격
당일 최고가 대비 -1000원시 매도
당일 최저가 대비 +1000원시 매수
input : p(0);
if data2(C > LowD(0)+1000) Then
buy("매수");
if data2(C < highD(0)-1000) Then
Sell("매도");
2)번 잔량
당일 최고잔량(bids-asks) 대비 -1000 시 매도
당일 최저잔량(bids-asks) 대비 +1000 시 매수
input : P(2);
Var : value(0,data2),hh(0,data2),ll(0,data2);
value = data2(Bids-asks);
if data2(bdate != bdate[1]) Then
{
hh = value;
ll = value;
}
if value > hh Then
hh = value;
if value < ll Then
ll = value;
if MarketPosition == 0 then
{
if value >= ll+1000 Then
Buy("매수");
}
if MarketPosition == 1 then
{
if value <= hh-1000 Then
sell("매도");
}
2020-04-29
946
글번호 138494
지표
답변완료
질문 3가지
질문 1) ATR(20)이 궁금합니다.
먼저, ATR은 아래 식을 이용하여 구하는 것인지요.
그리고 AVR 20일값인지요.
TR
Max(Max(H-C(1),C(1)-L),H-L)
(당일고가 - 전일종가) , (전일종가 - 당일저가) , (당일고가 - 당일저가) 중에 최대값
ATR
avg(max(max(h-l,abs(c(1)-h)),abs(c(1)-l)),Period)
TR의 값을 기간(period)로 이동평균한 값
질문 2) 수식 이해
진입후 최고가에서 청산하는 경우에다
진입후 첫봉 고가에서 청산하는 조건도 포함한다는 뜻인가요.
#진입이후 최고가에서 atr의 3배만큼 하락하면 청산
ExitLong ("ATR", AtStop, PosHigh - ATRVal);
End
else#진입후 첫봉에서는 진입봉의 고가에서 atr의 3배만큼 하락하면 청산
ExitLong ("ATR eb", AtStop, High - ATRVal);
질문 3) 간단한 수식으로 예제를 들어주셨으면 합니다.
예스랭귀지 함수중에 Correlation이란 함수가 있습니다.
2개의 데이타의 움직임에 따라 상관도를 리턴하는 함수입니다.
동일방향에 가까울수록 1에 가까운값, 역방향에 가까울수로 -1에 가까운 값을 리턴합니다.
해당 함수를 열어 수식 확인하실수 있습니다.
**************************************************************************************
안녕하세요
예스스탁입니다.
1
Input : AtrMult(5.0);
Var : PosHigh(0), PosLow(0);
#진입이후 최고가
PosHigh = Highest(H,BarsSinceEntry+1);
#진입이후 최저가
PosLow = Lowest(L,BarsSinceEntry+1);
If MarketPosition <> 0 Then
{
#매수진입이후 최고가에서 atr의 5배만큼 하락하면 청산
exitlong("EL_추적ATR",Atstop,PosHigh-ATR(20)*AtrMult);
#매도진입이후 최저가에서 atr의 5배만큼 상승하면 청산
exitshort("ES_추적ATR",Atstop,PosLow+ATR(20)*AtrMult);
}
### ATR Trailing LX(매수청산)###
Inputs: ATRs(3);
Variables: PosHigh(0), ATRVal(0);
ATRVal = ATR(10) * ATRs;
#무포지션에서는 해당봉의 고가 저장
If BarsSinceEntry() == 0 Then
PosHigh = High;
#매수진입후
If MarketPosition() == 1 Then Begin
#기존값보다 더큰 고가가 발생하면
#최고가 갱신
If High > PosHigh Then
PosHigh = High;
#진입이후 최고가에서 atr의 3배만큼 하락하면 청산
ExitLong ("ATR", AtStop, PosHigh - ATRVal);
End
else#진입후 첫봉에서는 진입봉의 고가에서 atr의 3배만큼 하락하면 청산
ExitLong ("ATR eb", AtStop, High - ATRVal);
### ATR Trailing SX(매도청산)###
Inputs: ATRs(3);
Variables: PosLow(0), ATRVal(0);
ATRVal = ATR(10) * ATRs;
#무포지션에서는 해당봉의 저가 저장
If BarsSinceEntry() == 0 Then
PosLow = Low;
#매도진입 후
If MarketPosition() == -1 Then Begin
#기존값보다 더 작은 저가가 발생하면
#최저가 갱신
If Low < PosLow Then
PosLow = Low;
#진입이후 최저가에서 atr의 3배만큼 상승하면 청산
ExitShort ("ATR", AtStop, PosLow + ATRVal);
End
else#진입후 첫봉에서는 진입봉의 저가에서 atr의 3배만큼 상승하면 청산
ExitShort ("ATR eb", AtStop, Low + ATRVal);
3
상관계수는 2개의 데이타의 움직임의 동일성을 계산하는 부분입니다.
2개의 데이타로 시스템들의 일간수익률을 이용했다는 의미입니다.
예스랭귀지 함수중에 Correlation이란 함수가 있습니다.
2개의 데이타의 움직임에 따라 상관도를 리턴하는 함수입니다.
동일방향에 가까울수록 1에 가까운값, 역방향에 가까울수로 -1에 가까운 값을 리턴합니다.
해당 함수를 열어 수식 확인하실수 있습니다.
다만 프로그램에서 시스템간 상관도를 알려주는 부분이 없습니다.
논문의 내용은 각 시스템의 일간수익률을 별도로 발취해서
엑셀이나 별도의 다른 프로그램으로 계산한 내용일것 같습니다.
즐거운 하루되세요
2020-04-29
946
글번호 138488
시스템