답변완료
종목검색 재질문 드립니다.
노고에 감사드립니다.
질문1
3201. 3202 화면에서 과거시점을 검색하려고 5를 입력하고 검색해도 현재봉이 나오는데 제가 조작을 잘못했나요?
5를 입력후 5봉전 결과를 알고 싶을때 조작방법을 설명부탁드립니다.
질문2
지난번 질문에서 일목균형표 선행 (1 or 2) 보다 캔들(주가)이 아래 있기를 기대했는데 전부 일목 구름위에 있습니다.
일목 구름속 or 일목 아래 있는걸로 수정하려고 하는데 어디를 고처야할지 모르겠습니다.
수고스럽지만 부탁드립니다.
var : AA(0),BB(0),X1(0),X2(0),A(0);
AA=(H+L+C)/3;
BB=AA*V;
X1=AccumN(BB,2);
X2=AccumN(V,2);
A=X1/X2;
input : Period(20),dv(2);
var : BBup(0),BBmd(0),BBdn(0);
BBup = BollBandUp(Period,dv);
BBmd = ma(c,Period);
BBdn = BollBandDown(Period,dv);
var : 기준선(0), 전환선(0),선행스팬1(0), 선행스팬2(0);
전환선 = (Highest(High, 9) + Lowest(Low, 9)) / 2;
기준선 = (Highest(High, 26) + Lowest(Low, 26)) / 2;
선행스팬1 = (전환선[25] + 기준선[25]) / 2 ;
선행스팬2 = (Highest(High, 52)[25] + Lowest(Low, 52)[25]) / 2;
if ma(Money,5)[1] >= 500000000 and
ma(Volume,5)[1] >= 50000 and
ma(C,112) < ma(C,224) and ma(C,224) < ma(C,448) and
V >= ma(V,120)[1]*(700/100) and
A[3] > A[2] &&
A[2] > A[1] &&
A[1] < A[0] and
((CrossUp(C,bbup) or CrossUp(c,선행스팬1) or CrossUp(c, 선행스팬2)) or
CrossUp(C,C[25])) and
((C < min(선행스팬1,선행스팬2) and C >= min(선행스팬1,선행스팬2)*0.98) and
(C < C[25] and C >= C[25]*0.98)) Then
Find(1);
2025-01-13
461
글번호 187150
종목검색
답변완료
도움 부탁드립니다
안녕하세요
늘 도움주셔서 감사드립니다.
아래의 지표 내용중에서 캔들에 "●","▼","▲" 표시를 하는 부분이 있습니다.
총 8개 인데 이 부분을 검색식으로나, 아니면 강조식이든 켄들이 종가 마감이 아닌
캔들이 시작될때 표시되었으면 합니다.
표현이 제대로 되었는지 ...
고맙습니다.
input : length(20);
input : len2(10);
input : showsignals(true);
input : highlighting(true);
var : upper(0),lower(0);
lower = lowest(L,length);
upper = highest(H,length);
plot1(upper, "Upper");
plot2(lower, "Lower");
var : up(0),down(0),sup(0),sdown(0);
var : k1(0),k2(0),k3(0),k4(0),i1(-1),i2(-1);
up=highest(high,length);
down=lowest(low,length);
sup=highest(high,len2);
sdown=lowest(low,len2);
if high >= up[1] Then
i1 = 0;
Else
{
if i1 >= 0 Then
i1 = i1+1;
}
if Low <= down[1] Then
i2 = 0;
Else
{
if i2 >= 0 Then
i2 = i2+1;
}
K1=iff(i1 <=i2, down , up);
K2=iff(i1 <= i2,sdown,sup);
K3=iff(close>K1,down,nan);
K4=iff(close<K1,up,nan);
plot3(K1,"Trend Line",red);
plot4(K2,"Exit Line",blue);
var : buySignal(False),sellSignal(False),buyExit(False),sellExit(False);
var : O1(-1),O2(-1),O3(-1),O4(-1);
var : E1(-1),E2(-1),E3(-1),E4(-1);
var : tx1(0),tx2(0),tx3(0),tx4(0);
var : tx5(0),tx6(0),tx7(0),tx8(0);
buySignal=high==upper[1] or CrossUp(high,upper[1]);
sellSignal = low==lower[1] or CrossUp(lower[1],low);
buyExit=low==sdown[1] or CrossUp(sdown[1],low);
sellExit = high==sup[1] or CrossUp(high,sup[1]);
if BuySignal == true Then
var1 = Index;
if sellSignal == true Then
var2 = Index;
if buyExit == true Then
var3 = Index;
if sellExit == true Then
var4 = Index;
O1= IFf(var1 > 0,Index-var1,-1);
O2= IFf(var2 > 0,Index-var2,-1);
O3= IFf(var3 > 0,Index-var3,-1);
O4= IFf(var4 > 0,Index-var4,-1);
if BuySignal[1] == true Then
var5 = Index;
if sellSignal[1] == true Then
var6 = Index;
if buyExit[1] == true Then
var7 = Index;
if sellExit[1] == true Then
var8 = Index;
E1= IFf(var5 > 0,Index-var5,-1);
E2= IFf(var6 > 0,Index-var6,-1);
E3= IFf(var7 > 0,Index-var7,-1);
E4= IFf(var8 > 0,Index-var8,-1);
if buySignal and O3<O1[1] Then
{
tx1 = Text_New(sDate,sTime,down,"●");
Text_SetColor(tx1,Green);
}
if buySignal and showsignals and O3<O1[1] Then
{
tx2 = Text_New(sDate,sTime,down,"▲");
Text_SetColor(tx2,Green);
}
if sellSignal and O4<O2[1] Then
{
tx3 = Text_New(sDate,sTime,up,"●");
Text_SetColor(tx3,Red);
}
if sellSignal and showsignals and O4<O2[1] Then
{
tx4 = Text_New(sDate,sTime,down,"▼");
Text_SetColor(tx4,Red);
}
if buyExit and O1<O3[1] Then
{
tx5 = Text_New(sDate,sTime,up,"●");
Text_SetColor(tx5,blue);
}
if buyExit and showsignals and O1<O3[1] Then
{
tx6 = Text_New(sDate,sTime,down,"▼");
Text_SetColor(tx6,blue);
}
if sellExit and O2<O4[1] Then
{
tx7 = Text_New(sDate,sTime,down,"●");
Text_SetColor(tx7,Yellow);
}
if sellExit and showsignals and O2<O4[1] Then
{
tx8 = Text_New(sDate,sTime,down,"▲");
Text_SetColor(tx8,blue);
}
2025-01-13
493
글번호 187149
지표
답변완료
질문드리겠습니다
답변감사드립니다
전에 질문에서 countif로 질문을 드렸던 이유가 조건검색 환경에서
aa[0] > aa[1]*1.05 인 조건이 예를들어 "200봉 이내에서 3회이상 발생했을때 검색"을 하려고 했던건데요,
만약에 아래와 같은 방법으로 작성 (cnt 범위는 수정을 한다고 했을때)하게 되면
h>l*1.08 이 가장 최근봉 (현재 진행봉) 이어야만 검색이 가능한건가요?
조건검색은 차트상 가장 최근봉 기준으로 검색이돼서
현재 당장에 발생한 봉만이 아니라, 과거의 만족 시점들도 찾으려면 countif 를 써야하는데
아래식처럼 모든봉 기준이 아니라, 특정 조건+배열로 묶었을때의 상황에서는 어떻게 작성해야되는지 궁금합니다
조건이 차트상에서 0봉이 아니라 과거에 있었던 거라면 ( 예를 들어 가장 최근 조건만족봉이 차트상 현재봉에서 N 봉 전에 나왔었다면),
"200봉 이내에 3회이상 발생" 이라는 조건을 검색하려면 어떻게 작성하면 될까요
감사합니다
var : cnt(0),count(0);
Array : aa[50](0);
if h>l*1.08 Then
{
TL_NEW(sDatE,sTimE,h*1.01,sDatE,sTimE,99999);
var1 = Index;
Var2 = var1[1];
For cnt = 49 DownTo 1
{
aa[cnt] = aa[cnt-1];
}
aa[0] = h;
if aa[0] > aa[1]*1.05 Then Plot12(h,"aa comp",Green,Def,1);
count = 0;
for cnt = 0 to 4
{
if aa[cnt] > aa[cnt+1]*1.05 then
count = count+1;
}
if count >= 3 then
Plot13(h,"CountIf",Red,Def,1);
}
2025-01-14
528
글번호 187148
종목검색
답변완료
질문드리겠습니다
안녕하세요 몇가지 여쭤보겠습니다
질문1)
아래와 같은 수식에서
1 to (var2-var1)-1 구간의 평균을 value1 에 구해놨는데요,,
1 to (var2-var1)-1 구간에서 value1 값보다 큰 H 값이 나올때마다 저장을하고 (최고가 값을 구하는게 아님)
그 모든 H 값들을 더해서 평균을 구하는 수식을 만들고 싶습니다
감사합니다
var : cnt(0), sum1(0), sumi(0),tt(0),hh(0),ll(0);
var : t(0),StartBarIndex(0);
Array : ii[50](0),aa[50](0);
if h>l*1.08 Then
{
TL_NEW(sDatE,sTimE,h*1.01,sDatE,sTimE,99999);
var1 = Index;
Var2 = var1[1];
sum1=0;
sumi=0;
For cnt = 1 to (var1-Var2)-1
{
sum1=sum1+h[cnt];
sumi=sumi+1;
}
value1=sum1/sumi;
if value1>0 then Plot11(value1,"sma",Blue,Def,1);
}
질문2)
countif 관련 질문인데요
countif 는 현재봉 기준으로 과거 일정 기간동안 조건이 횟수만큼 발생하면 신호가 나오는게 맞지 않나요?
아래 수식과 같이 h>l*1.08 라는 조건문 안에 countif 가 있으면,
if CountIf(aa[0] > aa[1]*1.05,5)>=4 이 부분을 어떻게 처리하는건지 궁금합니다
현재봉이 직전봉 (배열) 보다 5%이상 크다 라는 조건이 4회이상 나온다 라는 의도로 작성했습니다. 처음에는 100봉 같이 기간을 길게 잡고 했었는데 5봉 같이 짧은기간에도 나오길레
조건만족봉에서 뒤로 5개봉이내가 아니라 조건만족에 해당한 봉들 5개 이내이며, countif 에 들어간 조건은 h>l*1.08 조건만족 해당할때만 (즉 조건 두가지 모두 만족), 이라는 의미인거 같은데.. 조건에 맞지 않는데도 신호가 나올때가 있어서 헷갈리네요
if h>l*1.08 Then
{
TL_NEW(sDatE,sTimE,h*1.01,sDatE,sTimE,99999);
var1 = Index;
Var2 = var1[1];
For cnt = 49 DownTo 1
{
aa[cnt] = aa[cnt-1];
}
aa[0] = h;
if aa[0] > aa[1]*1.05 Then Plot12(h,"aa comp",Green,Def,1);
if CountIf(aa[0] > aa[1]*1.05,5)>=4 Then Plot13(h,"CountIf",Red,Def,1);
}
2025-01-13
548
글번호 187143
지표