커뮤니티
수식 작성 부탁드려요
2017-01-27 00:32:08
120
글번호 106336
input : 당일진입횟수(1),P(9);
var : cnt(0),count(0),RSIv(0);
count = 0;
for cnt = 0 to 20{
if sdate == EntryDate(cnt) Then
count = count+1;
}
RSIv = RSI(P);
if date != date[1] Then
Condition1 = false;
if RSIV >= 80 Then
Condition1 = true;
if stime < 145000 and
count < 당일진입횟수 and
dayopen >= DayClose(1)*1.10 and
dayopen < DayClose(1)*1.20 and
Condition1 == false
Then buy("b",AtMarket);
위의 수식을 3틱 차트에서 적용시킬건데요. RSI(9)정보는 3분봉차트에서 활성화될 시 나오는
RSI(9)수치를 가져와서 이 수식에서 RSI가 80이 넘는지를 판단하도록 하려면 어떤 수식을 바꿔줘야 되나요?
3틱 차트에서 3분봉 RSI(9)정보를 불러와서 그걸 RSI기준으로 적용되도록 하는건 불가능한가요?
답변 1
예스스탁 예스스탁 답변
2017-01-31 10:16:16
안녕하세요
예스스탁입니다.
문의하신 내용은 10틱이하의 차트에서는 참조데이터를 이용하실수 없어
수식에서 직접 계산해야 하는데
틱차트에서는 분봉이 지표값이 정확히 계산이 되지 않습니다.
아래는 최대한 근사값이 나오게 작성한 식입니다.
input : 당일진입횟수(1),P(9);
var : cnt(0),count(0);
Var : DownAmt(0), UpAmt(0), UpSum(0), DownSum(0), UpAvg(0), DownAvg(0);
var : Dindex(0), PreUpAvg(0), preDownAvg(0),TF(0),RSIV(0);
Array : CC[100](0);
TF = TimeToMinutes(stime)%3;
if date != date[1] or (date == date[1] and TF < TF[1]) Then{
for cnt = 1 to 99{
CC[cnt] = CC[cnt-1][1];
}
PreUpAvg = UpAvg[1];
preDownAvg = DownAvg[1];
Dindex = dindex + 1;
}
CC[0] = C;
If Dindex == P Then Begin
UpSum = 0;
DownSum = 0;
For cnt = 0 To P - 1 Begin
UpAmt = CC[cnt] - CC[cnt+1];
If UpAmt >= 0 Then
DownAmt = 0;
Else Begin
DownAmt = -UpAmt;
UpAmt = 0;
End;
UpSum = UpSum + UpAmt;
DownSum = DownSum + DownAmt;
End;
UpAvg = UpSum / P;
DownAvg = DownSum / P;
End
If Dindex > P Then {
UpAmt = CC[0]-CC[1];
If UpAmt >= 0 Then
DownAmt = 0;
Else
{
DownAmt = -UpAmt;
UpAmt = 0;
}
if Dindex <=1 Then {
UpAvg = 1;
DownAvg = 1;
}
Else {
UpAvg = (PreUpAvg * (P - 1) + UpAmt) / P;
DownAvg = (preDownAvg * (P - 1) + DownAmt) / P;
}
}
If UpAvg + DownAvg <> 0 Then
RSIv = 100 * UpAvg / (UpAvg + DownAvg);
Else
RSIv = 0;
count = 0;
for cnt = 0 to 20{
if sdate == EntryDate(cnt) Then
count = count+1;
}
if date != date[1] Then
Condition1 = false;
if RSIV >= 80 Then
Condition1 = true;
if stime < 145000 and
count < 당일진입횟수 and
dayopen >= DayClose(1)*1.10 and
dayopen < DayClose(1)*1.20 and
Condition1 == false
Then buy("b",AtMarket);
즐거운 하루되세요
> 프로투자자 님이 쓴 글입니다.
> 제목 : 수식 작성 부탁드려요
> input : 당일진입횟수(1),P(9);
var : cnt(0),count(0),RSIv(0);
count = 0;
for cnt = 0 to 20{
if sdate == EntryDate(cnt) Then
count = count+1;
}
RSIv = RSI(P);
if date != date[1] Then
Condition1 = false;
if RSIV >= 80 Then
Condition1 = true;
if stime < 145000 and
count < 당일진입횟수 and
dayopen >= DayClose(1)*1.10 and
dayopen < DayClose(1)*1.20 and
Condition1 == false
Then buy("b",AtMarket);
위의 수식을 3틱 차트에서 적용시킬건데요. RSI(9)정보는 3분봉차트에서 활성화될 시 나오는
RSI(9)수치를 가져와서 이 수식에서 RSI가 80이 넘는지를 판단하도록 하려면 어떤 수식을 바꿔줘야 되나요?
3틱 차트에서 3분봉 RSI(9)정보를 불러와서 그걸 RSI기준으로 적용되도록 하는건 불가능한가요?
다음글