답변완료
문의드립니다
의도한데로 신호가발생치않아 재질문드립니다
아래수식에서 선그래프의색상이
빨간색에서초록색으로변하면 매도 신호가발생하지않코있습니다 왜그런지궁금합니다
도움주셔서 감사합니다
input : inp_Sensitivity(0.01),inp_HiLo_Lookback(5),
inp_Slow_MA_Period(26),inp_Slow_MA_Method("EMA"),
inp_Fast_MA_Period(12),inp_Fast_MA_Method("EMA"),
inp_Signal_MA_Period(9),inp_Signal_MA_Method("EMA");
var : inp_Source(0),Hbarssince(-1),Lbarssince(-1),HiLo_Range(0),MA_Slow_Deviation(0);
var : MA_Fast(0),MA_Slow(0),MA_Slow_ATR(0);
Var : SumSqrt(0), Avgv(0), cnt(0),Histogrm(0),Main_Line(0),Signal_Line(0),Histogrm_Color(0);
inp_Source = close;
if inp_Fast_MA_Method == "SMA" Then
MA_Fast = ma(inp_Source, inp_Fast_MA_Period);
Else
MA_Fast = ema(inp_Source, inp_Fast_MA_Period);
if High == highest(H,inp_HiLo_Lookback) Then
Hbarssince = 0;
Else
{
if Hbarssince >= 0 Then
Hbarssince = Hbarssince+1;
}
if low == Lowest(L,inp_HiLo_Lookback) Then
Lbarssince = 0;
Else
{
if Lbarssince >= 0 Then
Lbarssince = Lbarssince+1;
}
HiLo_Range = abs(Hbarssince-Lbarssince) * PriceScale * 100000;
if inp_Slow_MA_Method == "SMA" Then
MA_Slow = ma(inp_Source, inp_Slow_MA_Period);
Else
MA_Slow = ema(inp_Source, inp_Slow_MA_Period);
If inp_Slow_MA_Period != 0 Then
{
Avgv = MA_Slow;
SumSqrt = 0;
For cnt = 0 To inp_Slow_MA_Period - 1 Begin
SumSqrt = SumSqrt + (C[cnt] - Avgv) * (C[cnt] - Avgv);
End;
MA_Slow_Deviation = SquareRoot(SumSqrt / inp_Slow_MA_Period);
}
Else
MA_Slow_Deviation = 0;
MA_Slow_ATR = atr(inp_Slow_MA_Period);
Histogrm = MA_Slow_Deviation - MA_Slow_ATR;
Main_Line = Histogrm;
if inp_Signal_MA_Method == "SMA" Then
Signal_Line = ma(inp_Source, inp_Signal_MA_Period);
Else
Signal_Line = ema(inp_Source, inp_Signal_MA_Period);
Histogrm_Color = green;
if MA_Fast >= MA_Fast[1] then
{
if HiLo_Range >= inp_Sensitivity then
Histogrm_Color = Red;
else
Histogrm_Color = yellow;
}
else
{
if HiLo_Range >= inp_Sensitivity Then
Histogrm_Color = Blue;
else
Histogrm_Color = White;
}
if (Histogrm_Color == green and Histogrm_Color[1] == Red) Then
Sell();
2024-05-09
634
글번호 179309
시스템
답변완료
전략차트 타주기 계산 한계점
안녕하세요!
1분봉 실시간 차트에 일봉 RSI(14)를 계산하려고 하니,
1분봉은 안되고, 10분봉부터 데이터가 맞기 시작을 합니다.
이건 전략차트가 10000개까지 불러들여서 계산하기 때문에 그런가요?
이 문제를 극복할 수 있는 방법은 없나요?
사용한 수식은 아래와 같습니다.
Input : Length(14);
var : cnt(0),SigSum(0),count2(0),RSIsig(0);
Var : Counter(0), DownAmt(0), UpAmt(0), UpSum(0), DownSum(0),
UpAvg(0), DownAvg(0);
var : idx(0), PreUpAvg(0), preDownAvg(0),RSIV(0);
Array : C1[100](0);
if Bdate != Bdate[1] Then
{
for cnt = 1 to 99
{
C1[cnt] = C1[cnt-1][1];
}
PreUpAvg = UpAvg[1];
preDownAvg = DownAvg[1];
idx = idx + 1;
}
C1[0] = C;
If idx == Length+2 Then
{
UpSum = 0;
DownSum = 0;
For Counter = 0 To Length - 1
{
UpAmt = C1[Counter] - C1[Counter+1];
If UpAmt >= 0 Then
DownAmt = 0;
Else
{
DownAmt = -UpAmt;
UpAmt = 0;
}
UpSum = UpSum + UpAmt;
DownSum = DownSum + DownAmt;
}
UpAvg = UpSum / Length;
DownAvg = DownSum / Length;
}
If idx > Length+2 Then
{
UpAmt = C1[0] - C1[1];
If UpAmt >= 0 Then
DownAmt = 0;
Else
{
DownAmt = -UpAmt;
UpAmt = 0;
}
UpAvg = (PreUpAvg * (Length - 1) + UpAmt) / Length;
DownAvg = (preDownAvg * (Length - 1) + DownAmt) / Length;
}
If UpAvg + DownAvg <> 0 Then
RSIv = 100 * UpAvg / (UpAvg + DownAvg);
Else
RSIv = 0;
Plot1(RSIv,"RSIv");
2024-05-09
613
글번호 179292
지표
답변완료
다시 보냅니다. 종목 검색식 부탁드려요
- 오전에 보내주신 검색식으로 해보니 잘되지 않아 다시보냅니다. 확인 부탁드려요.
-거래대금 매수매도체결량 수식입니다.(키움차트수식)
거래대금매수체결량이 거래대금매도체결량을 돌파할때의 종목을
예스트레이더 종목검색식 부탁드립니다.(일봉기준)
(수식1) 매수체결
AA=date/100%100;
대금=(H+O+L+C)/4*V/100000000;
A=IF(C>O,대금,0);
B=SUM(A);
D=ValueWhen(1,AA(1)!=AA,B(1));
B-D;
(수식2) 매도체결
AA=date/100%100;
대금=(H+O+L+C)/4*V/100000000;
A=IF(C<O,대금,0);
B=SUM(A);
D=ValueWhen(1,AA(1)!=AA,B(1));
B-D;
2024-05-09
597
글번호 179290
종목검색