답변완료
부탁드립니다2
수고 많으십니다.
아래 1)거래량 지표와 아래 2)의 Data2 거래량 지표를 합친 수식을 만들고자합니다.
번거롭더라도 도와주시면 감사하겠습니다.
오늘도 좋은하루 되시길 바랍니다.
====================
1)지표
input : R1(0),G1(0),B1(0);
input : R2(0),G2(0),B2(0);
var : hh(0),ll(0);
if Bdate != Bdate[1] Then
{
var1 = 0;
Var2 = Upvol-DownVol;
}
var1 = var1 + (Upvol-DownVol);
if CurrentDate == sDate Then
Plot1(var1,"당일실매수거래량",iff(var1 > 0,RGB(0,0,0),RGB(0,0,0)));
if CurrentDate == sDate Then
plot2(Var2,"첫봉종가");
if Bdate != Bdate[1] Then
{
hh = var1;
ll = var1;
}
Else
{
if var1 > hh Then
hh = var1;
if var1 < ll Then
ll = var1;
}
if CurrentDate == sDate Then
plot11(Var2+75,"첫봉종가+50");
if Bdate != Bdate[1] Then
{
hh = var1;
ll = var1;
}
Else
{
if var1 > hh Then
hh = var1;
if var1 < ll Then
ll = var1;
}
if CurrentDate == sDate Then
plot12(Var2-75,"첫봉종가-50");
if Bdate != Bdate[1] Then
{
hh = var1;
ll = var1;
}
Else
{
if var1 > hh Then
hh = var1;
if var1 < ll Then
ll = var1;
}
if CurrentDate == sDate Then
{
Plot3(hh,"최고");
plot4(ll,"최저");
plot5(ll+(hh-ll)*0.25,"25.0%");
plot6(ll+(hh-ll)*0.382,"38.2%");
plot7(ll+(hh-ll)*0.500,"50.0%");
plot8(ll+(hh-ll)*0.508+0.08,"50+0.02%");
plot9(ll+(hh-ll)*0.618,"61.8%");
plot10(ll+(hh-ll)*0.75,"75.0%");
plot13(ll+(hh-ll)*0.125,"12.5%");
plot14(ll+(hh-ll)*0.875,"87.5%");
plot15(ll+(hh-ll)*0.500+70,"10+60%");
plot16(ll+(hh-ll)*0.500-70,"220-60%");
Plot17(var1+20,"당일실매수거래량2",iff(var1 > 0,RGB(0,0,0),RGB(0,0,0)));
plot18(ll+(hh-ll)*0.243,"25.30%");
plot19(ll+(hh-ll)*0.743,"75.30%");
PlotBaseLine1(0);
}
2) 지표
var : C2(0,Data2),H2(0,Data2),L2(0,Data2),cnt(0,Data2);
var : Sidx(0,Data2),Sidx1(0,Data2),Eidx(0,Data2),Eidx1(0,Data2),Pre1(0,Data2);
C2 = Data2(c);
if Data2(Bdate != Bdate[1]) Then
{
H2 = C2;
L2 = C2;
Sidx = data2(Index);
Sidx1 = Sidx[1];
Eidx1 = Eidx[1];
}
Eidx = data2(Index);
if data2(Bdate != Bdate[1] or (Bdate == bdate[1] and C2 > h2)) Then
h2 = C2;
if data2(Bdate != Bdate[1] or (Bdate == Bdate[1] and C2 < l2)) Then
l2 = C2;
if Sidx1 > 0 Then
{
pre1 = 0;
For cnt = data2(Index)-Eidx1 to data2(Index)-Sidx1
{
if data2(sDate[cnt] < sDate and sTime[cnt] <= sTime) Then
{
pre1 = C2[cnt];
cnt = data2(Index-Sidx1+1);
}
}
}
// if CurrentDate == sDate and Data1(sDate) == Data2(sDate) Then
{
Plot1(C2,"참조",IFf(C2 >0,RGB(0,0,0),RGB(0,0,0)));
Plot2(H2,"최고");
Plot3(L2,"최저");
Plot4(pre1,"전일");
PlotBaseLine1(0);
Plot5(Data2(OpenD(0)),"D2당일시가");
Plot6(Data2(HighD(0)),"D2당일고가");
Plot7(Data2(LowD(0)),"D2당일저가");
Plot8(Data2(LowD(0)+(HighD(0)- LowD(0))*0.236),"23.6%");
Plot9(Data2(LowD(0)+(HighD(0)- LowD(0))*0.764),"76.4%");
Plot10(Data2(LowD(0)+(HighD(0)- LowD(0))*0.382),"38.2%");
Plot11(Data2(LowD(0)+(HighD(0)- LowD(0))*0.618),"61.8%");
Plot12(Data2(LowD(0)+(HighD(0)- LowD(0))*0.50),"50.0%");
Plot13(Data2(LowD(0)+(HighD(0)- LowD(0))*0.50-50),"-50.0%");
}
2023-12-20
1028
글번호 175037
지표
답변완료
부탁드립니다.
안녕하세요?
아래 지표에서 2일 시작선에서 pt1과, 2일 시작선에서 pt2사이를 채우기하는것이 아니라
PT1과 PT2 사이를 채우기하고자 합니다.
노고에 감사드리며 부탁드려봅니다.
===================================
input : p(2),pt1(1.25),pt2(1.5);
input : 굵기1(5),R1(255),G1(0),B1(0);
input : 굵기2(5),R2(255),G2(0),B2(0);
input : 굵기3(5),R3(0),G3(0),B3(255);
input : 굵기4(5),R4(0),G4(0),B4(255);
var : cnt(0),sum(0),mav(0);
var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0);
var : box1(0),box2(0),box3(0),box4(0);
sum = DayOpen(0);
if P >= 2 Then
{
For cnt = 1 to P-1
{
sum = sum + DayClose(cnt);
}
}
mav = sum/P;
if Index == 0 or (sTime >= 152000 and sTime[1] < 152000) Then
{
var1 = sDate;
Var2 = stime;
}
if Bdate != Bdate[1] Then
{
if var1 > 0 and Var2 > 0 Then
{
#mav+pt2 ~ mav+pt1
box1 = box_new(var1,Var2,mav+pt2,sDate,sTime,mav+pt1);
#mav+pt1 ~ mav
box2 = box_new(var1,Var2,mav+pt1,sDate,sTime,mav);
#mav ~ mav-pt1
box3 = box_new(var1,Var2,mav,sDate,sTime,mav-pt1);
#mav-pt1 ~ mav-pt2
box4 = box_new(var1,Var2,mav-pt2,sDate,sTime,mav-pt1);
box_SetColor(box1,RGB(R1,G1,B1));
box_SetColor(box2,RGB(R2,G2,B2));
box_SetColor(box3,RGB(R3,G3,B3));
box_SetColor(box4,RGB(R4,G4,B4));
box_SetSize(box1, 굵기1);
box_SetSize(box2, 굵기2);
box_SetSize(box3, 굵기3);
box_SetSize(box4, 굵기4);
Box_SetFill(box1,true,10);#채우기 투명도 10
Box_SetFill(box2,true,10);#채우기 투명도 10
Box_SetFill(box3,true,10);#채우기 투명도 10
Box_SetFill(box4,true,10);#채우기 투명도 10
}
}
Else
{
if sTime < 150000 Then
{
box_SetBegin(box1,var1,Var2,mav+pt2);
box_SetEnd(box1,sDate,sTime,mav+pt1);
box_SetBegin(box2,var1,Var2,mav+pt1);
box_SetEnd(box2,sDate,sTime,mav);
box_SetBegin(box3,var1,Var2,mav);
box_SetEnd(box3,sDate,sTime,mav-pt1);
box_SetBegin(box4,var1,Var2,mav-pt1);
box_SetEnd(box4,sDate,sTime,mav-pt2);
}
}
2023-12-20
809
글번호 175036
지표
답변완료
문의드립니다
a=c>c(1)*p1;
b=c>h(1);
d=c(1)<l(2);
조건=a && b && d;
고가=VALUEWHEN(1,조건,DAYHIGH());
저가=VALUEWHEN(1,조건,DAYLOW());
중심=(고가+저가)/2;
결과=crossdown(c,저가);
결과2=crossup(c,고가);
s=sum(1);
a_cnt=valuewhen(1,조건,s);
b_cnt=valuewhen(1,결과,s);
c_cnt=valuewhen(1,결과2,s);
결과3=a_cnt<b_cnt && b_cnt<c_cnt;
결과4=결과3(1) && 저가>c;
결과값=countsince(조건,결과4)==1;
결과값2=결과4 && 결과값;
시가=valuewhen(1,결과값2(1),o);
시가2=(시가*p2)*p2;
저가이탈=crossdown(l,시가2);
d_cnt=valuewhen(1,결과값2,s);
e_cnt=valuewhen(1,저가이탈,s);
조건2=d_cnt<e_cnt;
결과값3=countsince(결과값2,조건2)==1;
결과값4=조건2 && 결과값3
p1=1.03
p2=0.97
종목검색식으로 변환 부탁드립니다!
위 조건에 해당하는 봉을 화살표로 표시하는 지표식도 같이 부탁드려요!
추운데 감기조심하세요!
2023-12-19
899
글번호 175035
사용자 함수
답변완료
MACD
아래는 얼마전 "MACD(7,16)이 0돌파하고 익일에 역이평배열이 상승전환"하는 수식을 작성해주신것입니다.
감사히 쓰다보니 개선할 점이 있어 요청드립니다.
요청의 요지는,
이것을
- MACD 0선돌파와 금일 동시에 발생하는 것과
- MACD 0선돌파일 익익일에 역이평 상승전환이 발생하는 것을
아래 수식에 추가하여 한 수식에서 구하고자 합니다.
즉, MACD발생일을 기준으로 역이평 상승전환이 0봉, +1봉(현 수식), +2봉에
나오는 것입니다.
동시에 나오는(0봉) 것이 함께 만들기 어렵다면,
아래 수식에 +2봉 것만 추가하셔도 무방하겠읍니다.
(이 경우, MACD발생종목 하나하나 매일 확인해야 함)
부탁드리겠읍니다.
이상
===========================================================================
var : A1(0),A2(0),A3(0),A4(0),A5(0),A6(0),B1(False),B2(False),B3(False),B4(False);
VAR : AA1(0),AA2(0),AA3(0),AA4(0),조건(False);
A1=MA(C,3);
A2=MA(C,5);
A3=MA(C,8);
A4=MA(C,10);
A5=MA(C,20);
A6=MA(C,60);
B1=A1<A5 && A5<A6;
B2=A2<A5 && A5<A6;
B3=A3<A5 && A5<A6;
B4=A4<A5 && A5<A6;
IF B1 TheN {AA1=1;} ElsE {AA1=0;}
IF B2 TheN {AA2=1;} ElsE {AA2=0;}
IF B3 TheN {AA3=1;} ElsE {AA3=0;}
IF B4 TheN {AA4=1;} ElsE {AA4=0;}
조건=AA1[1]+AA2[1]+AA3[1]+AA4[1]>=1 && AA1+AA2+AA3+AA4==0 && C>O;
var1 = macd(7,16);
Condition1 = CrossUp(var1,0);
IF Condition1[1] == true and 조건 && !조건[1] TheN
Find(1);
2023-12-19
1043
글번호 175034
종목검색
답변완료
수식 문의드립니다.
안녕하세요.
매수/매도 관련해서 문의드립니다.
많은 도움 주셔서 항상 감사합니다.
즐거운 하루 보내세요.
----------------------------------------------------------
1. 특정금액(예,778000원)에서 매도가 나와야 되는 상황에서
신호타입을 atlimit과 atstop 두 경우를 다 적용해 봤는데
해당봉이 음봉일 경우에는 해당금액에서 매도가 되지 않습니다.
ExitLong("ex2-1",AtLimit,778000,"",1,1); 또는
ExitLong("ex2-1",atstop,778000,"",1,1);
어떻게 적용하면 될지 문의드립니다.(그림 참고)
2. 분할 매수 관련 질문입니다.
예를 들어 10,000원부터 1,000원(한 구간) 하락 시마다 분할 매수를 하는데,
1) 시가가 전일 종가 대비 10% 이상 하락 시 다음 매수가격을 하락봉의 종가로 설정하고
그 가격부터 다시 1,000원(한 구간) 하락 시 분할 매수.
2) 단, 시가가 직전 매수 금액 대비 2,000원(두 구간) 이상 하락 시(최초 매수이면 기준 가격 대비 두 구간 하락 시), 당일에 한 차수만 매수.
3) 시가가 직전 매수 금액 대비 1,000원(한 구간) 이내 하락이고 종가가 많이 빠지는 경우에는 당일에 각 구간 하락 시 마다 매수 가능.
case1) c[2] : 10,000, O[1]:9,500, C[1] : 8,800, O : 8,300, C : 7,600 -> b1 : 9,000, b2 : 8,000 ~~
case2) c[2] : 10,000, O[1]:8,500, C[1] : 8,800, O : 8,300, C : 7,600 -> b1 : 8,800, b2 : 7,800 ~~
case3) c[2] : 10,000, O[1]:7,500, C[1] : 7,200, O : 6,700, C : 6,000 -> b1 : 7,200, b2 : 6,200 ~~
case4) c[2] : 10,000, O[1]:7,500, C[1] : 7,200, O : 6,100, C : 6,000 -> b1 : 7,200, b2 : 6,000 ~~
case5) c[2] : 10,000, O[1]:7,500, C[1] : 7,200, O : 6,500, C : 5,100 -> b1 : 7,200, b2 : 6,200, b3 : 5,200 ~~
이 부분에 대한 수식도 함께 문의드립니다.
감사합니다.
2023-12-19
1392
글번호 175032
시스템