답변완료
등가 수식 추가
늘 감사합니다.
수식은 유익하게 잘 쓰고 있습니다.
아래의 수식에 다음 사항을 추가해 주세요.
--------------
Plot6(Var4,"첫날시가");와 같은 방식으로
첫날 시가의 ATM 등가를 추가해 주세요
---------------
var : month(0),nday(0),week(0);
var :EX(false),HH(0),LL(0),DD(0),HH1(0),LL1(0);
var : t1(0),t2(0),t3(0),t4(0),t5(0),t6(0),t7(0),t8(0),t9(0),t10(0);
month = int(date/100)-int(date/10000)*100;
nday = date - int(date/100)*100;
week = DayOfWeek(date);
#선물만기
#if Month%3 == 0 and nday >= 8 and nday <= 14 and week == 4 then
if nday >= 8 and nday <= 14 and week == 4 then#옵션만기
EX = true;
Else
EX = false;
if EX == false and EX[1] == true Then{
Condition1 = true;
DD = sDate;
HH = H;
LL = L;
HH1 = HH[1];
LL1 = LL[1];
}
if Condition1 == true then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
var1 = HH;
var2 = LL;
var3 = var1-var2;
plot1(var1,"Maxi");
plot2(var2+var3*0.618,"되돌림");
plot3(var2+var3*0.500,"중심");
plot4(var2+var3*0.382,"축소");
plot5(var2,"Mini");
if sDate == DD Then
{
Var4 = DayOpen;
Var5 = DayHigh;
Var6 = DayLow;
}
Plot6(Var4,"첫날시가");
Plot7(Var5,"첫날고가");
Plot8(Var6,"첫날저가");
if HH1 > 0 and LL1 > 0 Then
{
Plot9(HH1,"전월물최고");
Plot10(LL1,"전월물최저");
Plot11((HH1+LL1)/2,"전월물중간");
}
}
2023-03-04
867
글번호 166920
지표
답변완료
박스 변색
input : Period(120),폭1(0.9),폭2(1.3),폭3(1.7),폭4(0.9);
Var:j(0),T(0);
Var: date11(0),date12(0),time11(0),time12(0),
date21(0),date22(0),time21(0),time22(0),
date31(0),date32(0),time31(0),time32(0);
var : TL(0),TL1(0),tl2(0),tl3(0),TX(0),tl4(0),tl5(0),tl9(0),dl(0);
var : box(0),box1(0),txx(0);
Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0);
Plot1(value12);
For j = 0 To 19
{
HiBar[j] = HiBar[j] + 1;
LoBar[j] = LoBar[j] + 1;
}
if crossup(c,highest(H,Period)[1]) Then
T = 1;
if CrossDown(c,Lowest(L,Period)[1]) Then
T = -1;
If T == -1 Then
{
If T[1] != -1 Then
{
For j = 18 DownTo 0
{
LoVal[j+1] = LoVal[j];
LoBar[j+1] = LoBar[j];
}
LoVal[0] = L;
LoBar[0] = 0;
date11 = date[HiBar[0]];
time11 = stime[HiBar[0]];
Value11 = HiVal[0];
date12 = date[LoBar[0]];
time12 = stime[LoBar[0]];
Value12 = LoVal[0];
date21 = date[HiBar[0]];
time21 = stime[HiBar[0]];
date22 = date[0];
time22 = stime[0];
box = box_new(date11,time11,Value11,date12,time12,Value12);
Condition1 = False;
if Condition1 == False and Value12 <= value11-폭1 Then
{
Condition1 = true;
}
Condition3 = False;
if Condition3 == False and Value12 <= value11-폭2 Then
{
Condition3 = true;
}
Condition4 = False;
if Condition4 == False and Value12 <= value11-폭3 Then
{
Condition4 = true;
}
Text_SetSize(tx,25);
Text_SetColor(Tx,Red);
Text_SetStyle(tx,1,1);
Text_SetBold(tx,1);
if abs(value12[1]-value11[1]) < 0.5 Then
Text_Delete(tx);
tx = text_new(sDate,stime,value12,NumToStr(value12-value11,2));
Text_SetColor(Tx,Black);
Text_SetStyle(tx,1,0);
Text_SetSize(tx,30);
Text_SetBold(tx,1);
}
If LoVal[0] > L Then
{
LoVal[0] = L;
LoBar[0] = 0;
date12 = date[LoBar[0]];
time12 = stime[LoBar[0]];
Value12 = LoVal[0];
date22 = date[0];
time22 = stime[0];
Box_SetEnd(box,date12,time12,Value12);
if Condition1 == False and Value12 <= value11-폭1 Then
{
Condition1 = true;
TL9 = TL_New(sDate,sTime,value12,sDate,sTime,99999);
TL_SetColor(TL9,Magenta);
TL_SetSize(TL9,1);
}
if Condition3 == False and Value12 <= value11-폭2 Then
{
Condition3 = true;
TL9 = TL_New(sDate,sTime,value12,sDate,sTime,99999);
TL_SetColor(TL9,Magenta);
TL_SetSize(TL9,1);
}
if Condition4 == False and Value12 <= value11-폭3 Then
{
Condition4 = true;
TL9 = TL_New(sDate,sTime,value12,sDate,sTime,99999);
TL_SetColor(TL9,Red);
TL_SetSize(TL9,1);
}
Text_SetString(tx,NumToStr(value12-value11,2)+" ");
Text_SetLocation(tx,sDate,sTime,value12);
}
if value12 <= value11-0.9 Then
{
Box_SetColor(box,Lime);
Box_SetFill(box,true,55);
}
Else
{
Box_SetColor(box,LCyan);
Box_SetFill(box,true,25);
}
}
If T == 1 Then
{
If T[1] != 1 Then
{
For j = 18 DownTo 0
{
HiVal[j+1] = HiVal[j];
HiBar[j+1] = HiBar[j];
}
HiVal[0] = H;
HiBar[0] = 0;
date11 = date[LoBar[0]];
time11 = stime[LoBar[0]];
Value11 = LoVal[0];
date12 = date[HiBar[0]];
time12 = stime[HiBar[0]];
Value12 = HiVal[0];
date31 = date[LoBar[0]];
time31 = stime[LoBar[0]];
date32 = date[0];
time32 = stime[0];
box = box_new(date11,time11,Value11,date12,time12,Value12);
Condition2 = False;
if Condition2 == False and Value12 >= value11+폭4 Then
{
Condition2 = true;
}
Text_SetSize(tx,25);
Text_SetColor(Tx,Blue);
Text_SetStyle(tx,1,0);
Text_SetBold(tx,1);
if abs(value12[1]-value11[1]) < 0.5 Then
Text_Delete(tx);
tx = text_new(sDate,stime,value12,NumToStr(value12-value11,2));
Text_SetColor(Tx,Black);
Text_SetStyle(tx,1,1);
Text_SetSize(tx,30);
Text_SetBold(tx,1);
}
If HiVal[0] < H Then
{
HiVal[0] = H;
HiBar[0] = 0;
date12 = date[HiBar[0]];
time12 = stime[HiBar[0]];
Value12 = HiVal[0];
date32 = date[0];
time32 = stime[0];
Box_SetEnd(box,date12,time12,Value12);
if Condition2 == False and Value12 >= value11+폭4 Then
{
Condition2 = true;
TL9 = TL_New(sDate,sTime,0,sDate,sTime,99999);
TL_SetColor(TL9,Cyan);
TL_SetSize(TL9,1);
}
Text_SetString(tx,NumToStr(value12-value11,2)+" ");
Text_SetLocation(tx,sDate,sTime,value12);
}
if Value12 >= value11+0.9 Then
{
Box_SetColor(box,Magenta);
Box_SetFill(box,true,30);
}
Else
{
Box_SetColor(box,Orange);
Box_SetFill(box,true,30);
}
}
박스 크기가 0.9p에 도달하면 색상을 바꾸는 부분에서,
바뀐 후에 상승 박스는 변화 없고, 0.9p ~ 1.3p 하락 박스도 1차로 바뀐 색 그대로 유지.
하락 박스만, 크기가 1.3p에 도달하면 그 박스만 2차로 다른 색으로 바꿔주고, 1.7p에 도달하면 해당 박스만 다시 한번 더 (3차) 다른 색으로 변경.
(크기에 따라, 상승 박스는 두가지 색, 하락 박스는 네가지 색.) 감사합니다.
2023-03-05
1033
글번호 166918
지표
답변완료
추가 질의를 드립니다.
알려주신 수식을 일부 수정하고 있습니다.
input : af(0.02),maxaf(0.2);
input : p1(5),p2(20),p3(60),p4(120);
input : 당일시가(1),당일고가(1),당일저가(1),당일중심(1);
input : 전일시가(1),전일고가(1),전일저가(1),전일중심(1),전일종가(1);
var : tx1(0),tx2(0),tx3(0),tx4(0),tx5(0);
var : tx6(0),tx7(0),tx8(0),tx9(0),tx10(0);
var : tx11(0),tx12(0),tx13(0),tx14(0);
var1 = sar(af,maxaf);
value1 = ma(c,p1);
value2 = ma(c,p2);
value3 = ma(c,p3);
value4 = ma(c,p4);
Text_Delete(tx1);
Text_Delete(tx2);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
Text_Delete(tx8);
Text_Delete(tx9);
if 당일시가 == 1 Then
{
Plot1(DayOpen(0),"당일시가");
tx1 = Text_New(nextbarsdate,nextbarstime,DayOpen(0),"당일시가");
}
if 당일고가 == 1 Then
{
Plot2(DayHigh(0),"당일고가");
tx2 = Text_New(nextbarsdate,nextbarstime,DayHigh(0),"당일고가");
}
if 당일저가 == 1 Then
{
Plot3(DayLow(0),"당일저가");
tx3 = Text_New(nextbarsdate,nextbarstime,DayLow(0),"당일저가");
}
if 당일중심 == 1 Then
{
Plot4((DayHigh(0)+DayLow(0))/2,"당일중심");
tx4 = Text_New(nextbarsdate,nextbarstime,(DayHigh(0)+DayLow(0))/2,"당일중심");
}
if 전일시가 == 1 Then
{
Plot5(DayOpen(1),"전일시가");
tx5 = Text_New(nextbarsdate,nextbarstime,DayOpen(1),"전일시가");
}
if 전일고가 == 1 Then
{
Plot6(DayHigh(1),"전일고가");
tx6 = Text_New(nextbarsdate,nextbarstime,DayHigh(1),"전일고가");
}
if 전일고가 == 1 Then
{
Plot7(DayLow(1),"전일저가");
tx7 = Text_New(nextbarsdate,nextbarstime,DayLow(1),"전일저가");
}
if 전일중심 == 1 Then
{
Plot8((DayHigh(1)+DayLow(1))/2,"전일중심");
tx8 = Text_New(nextbarsdate,nextbarstime,(DayHigh(1)+DayLow(1))/2,"전일중심");
}
if 전일종가 == 1 Then
{
Plot9(DayClose(1),"전일종가");
tx9 = Text_New(nextbarsdate,nextbarstime,DayClose(1),"전일종가");
Plot10(var1,"파라볼릭",IFf(C>var1,Red,Blue));
Plot11(value1,"이평1");
Plot12(value2,"이평2");
Plot13(value3,"이평3");
Plot14(value4,"이평4");
Text_SetStyle(tx1,0,2);
Text_SetStyle(tx2,0,2);
Text_SetStyle(tx3,0,2);
Text_SetStyle(tx4,0,2);
Text_SetStyle(tx5,0,2);
Text_SetStyle(tx6,0,2);
Text_SetStyle(tx7,0,2);
Text_SetStyle(tx8,0,2);
Text_SetStyle(tx9,0,2);
==> 마지막줄(91줄, 23열, 문법 에러, 잘못된 토큰<File End>'라고 뜨는데요..
무엇인 문제인가요? ㅠㅠ
2023-03-03
1320
글번호 166913
지표
답변완료
[질의드립니다]
[질의드립니다]
예스랭귀지 초보인지라 몇가지 문의를 드리고자 합니다.
일전에 질의 드렸던 내용인데 에러가 나서 질의 드립니다.
[질의 내용]
1-1. 당일과 전일의 주요 지표값 등 출력
①당일 시가
②당일 고가
③당일 저가
④당일 중앙선(당일 저점과 당일 고점의 중간값)
⑤전일 시가
⑥전일 고가
⑦전일 저가
⑧전일 중앙선
⑨전일 종가
를 차트에 선으로 출력하고, 당일 시가, 당일 고가 등등으로 표식도 함께 출력하고 싶습니다.
⑩파라볼릭(종가) ==> 기본지표에 있는 파라볼릭(종가)임
⑪ 5 이평선
⑫ 20 이평선
⑬ 60 이평선
⑭ 120 이평선
은 텍스트 표식없이 함께 출력하고싶습니다.
(파라볼릭은 원본 그대로 캔들주변의 작은 점으로 표기하되, 색상과 두께 조절이 가능하게, 변수인 af 와 maxAf 는 변수편집 기능까지 가능하게)
(5/10/20/60/120 기본 이평선은 필요시 10, 30, 200 이평선 등등으로 이평선을 조정할 수 있도록 변수? 취급하여 편집기능까지)
== > 결론: 위의 지표들을 하나의 세트로 묶고자 함
1-2. 위 "1-1" 의 당일/전일 주요 지표값 등의 전부를
"지표속성"의 "차트표시"에서 체크박스로 만들어서 선택적으로 출력하고 싶고,
라인색과 두께도 함께 조절하고 싶습니다.
===> 답변 내용
1
input : af(0.02),maxaf(0.2);
input : p1(5),p2(20),p3(60),p4(120);
var : tx1(0),tx2(0),tx3(0),tx4(0),tx5(0);
var : tx6(0),tx7(0),tx8(0),tx9(0),tx10(0);
var : tx11(0),tx12(0),tx13(0),tx14(0);
var1 = sar(af,maxaf);
value1 = ma(c,p1);
value2 = ma(c,p2);
value3 = ma(c,p3);
value4 = ma(c,p4);
Plot1(DayOpen(0),"당일시가");
Plot2(DayHigh(0),"당일고가");
Plot3(DayLow(0),"당일저가");
Plot4((DayHigh(0)+DayLow(0))/2,"당일중심");
Plot5(DayOpen(1),"전일시가");
Plot6(DayHigh(1),"전일고가");
Plot7(DayLow(1),"전일저가");
Plot8((DayHigh(1)+DayLow(1))/2,"전일중심");
Plot9(DayClose(1),"전일종가");
Plot10(var1,"파라볼릭",IFf(C>var1,Red,Blue));
Plot11(value1,"이평1");
Plot12(value2,"이평2");
Plot13(value3,"이평3");
Plot14(value4,"이평4");
Text_Delete(tx1);
Text_Delete(tx2);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
Text_Delete(tx8);
Text_Delete(tx9);
Text_Delete(tx10);
Text_Delete(tx11);
Text_Delete(tx12);
Text_Delete(tx13);
Text_Delete(tx14);
tx1 = Text_New(nextbarsdate,nextbarstime,DayOpen(0),"당일시가");
tx2 = Text_New(nextbarsdate,nextbarstime,DayHigh(0),"당일고가");
tx3 = Text_New(nextbarsdate,nextbarstime,DayLow(0),"당일저가");
tx4 = Text_New(nextbarsdate,nextbarstime,(DayHigh(0)+DayLow(0))/2,"당일중심");
tx5 = Text_New(nextbarsdate,nextbarstime,DayOpen(1),"전일시가");
tx6 = Text_New(nextbarsdate,nextbarstime,DayHigh(1),"전일고가");
tx7 = Text_New(nextbarsdate,nextbarstime,DayLow(1),"전일저가");
tx8 = Text_New(nextbarsdate,nextbarstime,(DayHigh(1)+DayLow(1))/2,"전일중심");
tx9 = Text_New(nextbarsdate,nextbarstime,var1,"파라볼릭");
tx10 = Text_New(nextbarsdate,nextbarstime,value1,NumToStr(P1,0)+"이평");
tx11 = Text_New(nextbarsdate,nextbarstime,value2,NumToStr(P2,0)+"이평");
tx12 = Text_New(nextbarsdate,nextbarstime,value3,NumToStr(P3,0)+"이평");
tx13 = Text_New(nextbarsdate,nextbarstime,value4,NumToStr(P4,0)+"이평");
Text_SetStyle(tx1,0,2);
Text_SetStyle(tx2,0,2);
Text_SetStyle(tx3,0,2);
Text_SetStyle(tx4,0,2);
Text_SetStyle(tx5,0,2);
Text_SetStyle(tx6,0,2);
Text_SetStyle(tx7,0,2);
Text_SetStyle(tx8,0,2);
Text_SetStyle(tx9,0,2);
Text_SetStyle(tx10,0,2);
Text_SetStyle(tx11,0,2);
Text_SetStyle(tx12,0,2);
Text_SetStyle(tx13,0,2);
Text_SetStyle(tx14,0,2);
==> 수정 요청
1) 첫번재 그림에서 보시다시피, 전일중심가, 전일시가는 체크박스 해제(표기하지 않기로함) 했는데,
글자만 나오고 선은 출력되지 않습니다. (원래는 둘다 안나와야 함)
계속 이런 에러가 나타나는데 해결 방법이 있을까요?
2) 두번째 그림에서 보시다 시피..
오늘(3월 11일) 항셍의 경우, 오전 11시 46분에 20517 저점을 찍었는데,,
왜 "당일 저가" 표기가 안되는 걸가요?
2023-09-06
1460
글번호 166897
지표