커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

문의드립니다

input : signal(10); var1 = OBV; Var2 = Ema(var1,signal); Plot1(Var1); plot2(Var2); 수고 많으십니다 여전에 만들어주신 지표입니다 부탁드릴 수식은 1) Plot1이 Plot2보다 위면 빨간색 아래면 파란색 으로 표시돼게 나오도록 부탁드립니다 색깔 변경 가능하도록 부탁드리겠습니다 2) 위 지표를 시스템으로 부탁드리겠습니다
프로필 이미지
cjfdk
2022-12-16
1073
글번호 164660
지표
답변완료

수정부탁드립니다

색상을 실시간 으로 표시부탁드립니다. input : vPeriod(120),선두께(2),N(0),rtt(20),상승색a(magenta),하락색a(lime),색상두께(20),글씨대(20); Var:상승색(Magenta), 하락색(Cyan); input : 틱1(0),틱2(1); Var:vj(0),vT(0),txx(0),txxx(0); Var: date11(0),date12(0),time11(0),time12(0),sTL1(0),sTL(0), date21(0),date22(0),time21(0),time22(0), date31(0),date32(0),time31(0),time32(0),stx(0),stx1(0),stl4(0),sTL9(0),dboxx(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0); Array:r[7](0),fr[7](0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xOpen = open; xClose = (O+H+L+C)/4; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } if XClose > Xopen Then PlotPaintBar(h,l,"강조",Red); else if XClose < Xopen Then PlotPaintBar(h,l,"강조",Blue); else PlotPaintBar(h,l,"강조",GREEN); r[0] = 0; r[1] = 2; r[2] = 3.; r[3] = -1; r[4] = -2.; r[5] = 1; r[6] = 0.5; For vj = 0 To 19 { HiBar[vj] = HiBar[vj] + 1; LoBar[vj] = LoBar[vj] + 1; } if crossup(xClose,highest(xHigh,vPeriod)[1]) Then vT = 1; if CrossDown(xClose,Lowest(xLow,vPeriod)[1]) Then vT = -1; If vT == -1 Then { If vT[1] != -1 Then { For vj = 18 DownTo 0 { LoVal[vj+1] = LoVal[vj]; LoBar[vj+1] = LoBar[vj]; } LoVal[0] = xLow; LoBar[0] = 0; date11 = date[HiBar[0]+N]; time11 = stime[HiBar[0]+N]; Value11 = HiVal[0]; date12 = date[LoBar[0]+N]; time12 = stime[LoBar[0]+N]; Value12 = LoVal[0]; Text_Delete(txx); TL_Delete(stl); sTL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); sTL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(sTL1,하락색); date21 = date[HiBar[0]+N]; time21 = stime[HiBar[0]+N]; date22 = date[0]; time22 = stime[0]; for vj = 0 to 6 { fr[vj] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[vj]); } // Condition99 = True; Txx = Text_New(date11,time11,Value11+PriceScale*7,"●"+NewLine+NewLine+NewLine); Text_SetColor(Txx,Blue); Text_SetStyle(Txx,2,2); Text_SetSize(txx,rtt); dboxx = box_new(Date11,Time11,xHigh,NextBarSdate,NextBarStime,xLow); Box_SetColor(dboxx,하락색a); Box_SetFill(dboxx,true,색상두께); Box_SetExtFill(dboxx,true); if Condition99 == true and Loval[0] <= loval[1]-PriceScale*틱2 Then { Condition99 = False; Text_Delete(txx); } if abs(value11[1]-value12[1]) < 1 Then Text_Delete(txxx); Else { Text_SetColor(Txxx,magenta); Text_SetSize(txxx,글씨대); } txxx = Text_New(date11,time11,Value11,NumToStr(abs(value11-value12),2)); Text_SetStyle(txxx,2,1); Text_SetBold(txxx,1); } If LoVal[0] > xLow Then { LoVal[0] = xLow; LoBar[0] = 0; date12 = date[LoBar[0]+N]; time12 = stime[LoBar[0]+N]; Value12 = LoVal[0]; TL_SetEnd(sTL1, date12,time12,Value12); date22 = date[0+N]; time22 = stime[0+N]; if Condition99 == true and Loval[0] <= loval[1]-PriceScale*틱2 Then // PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav"); { Condition99 = False; Text_Delete(txx); } Text_SetString(txxx,NumToStr(abs(value11-value12),2)); if abs(value11-value12) < 1 Then { Text_SetColor(Txxx,Blue); Text_SetSize(txxx,글씨대); } Else { Text_SetColor(Txxx,Blue); Text_SetSize(txxx,15); } Box_SetEnd(dboxx,NextBarSdate,NextBarStime,L); } } If vT == 1 Then { If vT[1] != 1 Then { For vj = 18 DownTo 0 { HiVal[vj+1] = HiVal[vj]; HiBar[vj+1] = HiBar[vj]; } HiVal[0] = xHigh; HiBar[0] = 0; date11 = date[LoBar[0]+N]; time11 = stime[LoBar[0]+N]; Value11 = LoVal[0]; date12 = date[HiBar[0]+N]; time12 = stime[HiBar[0]+N]; Value12 = HiVal[0]; Text_Delete(txx); TL_Delete(stl); sTL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); sTL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(sTL1,상승색); date31 = date[LoBar[0]+N]; time31 = stime[LoBar[0]+N]; date32 = date[0]; time32 = stime[0]; for vj = 0 to 5 { fr[vj] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[vj]); } //Condition1 = False; Txx = Text_New(date11,time11,Value11+PriceScale*7,NewLine+NewLine+NewLine+"●"); // Condition99 = True; Text_SetColor(Txx,magenta); Text_SetStyle(Txx,2,2); Text_SetSize(txx,rtt); dboxx = box_new(Date11,Time11,xHigh,NextBarSdate,NextBarStime,xLow); Box_SetColor(dboxx,상승색a); Box_SetFill(dboxx,true,색상두께); Box_SetExtFill(dboxx,true); if Condition99 == true and Loval[0] >= Loval[1]-PriceScale*틱1 Then { Condition99 = False; Text_Delete(txx); } if abs(value11[1]-value12[1]) < 1 Then Text_Delete(txxx); Else { Text_SetColor(Txxx,Blue); Text_SetSize(txxx,글씨대); } txxx = Text_New(date11,time11,Value11,NumToStr(abs(value11-value12),2)); Text_SetStyle(txxx,2,3); Text_SetBold(txxx,1); } If HiVal[0] < xhigh Then { HiVal[0] = xHigh; HiBar[0] = 0; date12 = date[HiBar[0]+N]; time12 = stime[HiBar[0]+N]; Value12 = HiVal[0]; TL_SetEnd(sTL1, date12,time12,Value12); date32 = date[0+N]; time32 = stime[0+N]; if Condition99 == true and HiVal[0] <= HiVal[1]-PriceScale*틱2 Then // PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav"); { Condition99 = False; Text_Delete(txx); } Text_SetString(txxx,NumToStr(abs(value11-value12),2)); if abs(value11-value12) < 1 Then { Text_SetColor(Txxx,magenta); Text_SetSize(txxx,글씨대); } Else { Text_SetColor(Txxx,magenta); Text_SetSize(txxx,15); } Box_SetEnd(dboxx,NextBarSdate,NextBarStime,xlow); } } TL_SetSize(sTL1,선두께); 사각박스지표 선행지표 부탁드립니다. 선행지표 Input:a(9),b(26),d(52); var : 전환선(0),기준선(0),후행스팬(0),선행스팬1(0),선행스팬2(0),선행스팬3(0),선행스팬4(0); 전환선 = (highest(H,1)+lowest(L,1))/2; 기준선 = (highest(H,b)+lowest(L,b))/2; 후행스팬 = C; 선행스팬1 = (전환선+기준선)/2; 선행스팬2 = (highest(H,d)+lowest(L,d))/2; if 전환선 >= C then Plot1(전환선, "전환선",blue); Else Plot1(전환선, "전환선",RED); if 기준선 >= C then Plot2(기준선, "기준선",BLUE); Else Plot2(기준선, "기준선",red); Plot3(후행스팬, "후행스팬"); if 선행스팬1 >= C then Plot4(선행스팬1, "선행스팬1",BLUE); Else Plot4(선행스팬1, "선행스팬1",RED); if 선행스팬2 >= C then Plot5(선행스팬2, "선행스팬2",BLUE); Else Plot5(선행스팬2, "선행스팬2",RED);
프로필 이미지
외국인
2022-12-17
949
글번호 164659
지표

흑수돌 님에 의해서 삭제되었습니다.

프로필 이미지
흑수돌
2022-12-16
9
글번호 164658
시스템

흑수돌 님에 의해서 삭제되었습니다.

프로필 이미지
흑수돌
2022-12-16
14
글번호 164657
시스템
답변완료

수식 문의

아래의 강조 수식을 시그널로 변환하되 음봉이 연속해서 n회 출현하면 매도, 양봉이 연속해서 n회 출현하면 매수 하는 조건을 추가하고 싶습니다. 감사합니다. input : gamma(0); var : OSeries(0),ol0(0),ol1(0),ol2(0),ol3(0),ol(0); var : CSeries(0),cl0(0),cl1(0),cl2(0),cl3(0),cl(0); OSeries = Open; IF BarIndex == 0 THEN { OL = OSeries; ol0 = OSeries; ol1 = OSeries; ol2 = OSeries; ol3 = OSeries; } ELSE { ol0 = (1 - gamma) * OSeries + gamma * ol0; ol1 = -gamma * ol0 + ol0 + gamma * ol1; ol2 = -gamma * ol1 + ol1 + gamma * ol2; ol3 = -gamma * ol2 + ol2 + gamma * ol3; OL = (ol0 + 2 * ol1 + 2 * ol2 + ol3) / 6; } CSeries = c; IF BarIndex == 0 THEN { CL = CSeries; cl0 = CSeries; cl1 = CSeries; cl2 = CSeries; cl3 = CSeries; } ELSE { cl0 = (1 - gamma) * CSeries + gamma * cl0; cl1 = -gamma * cl0 + cl0 + gamma * cl1; cl2 = -gamma * cl1 + cl1 + gamma * cl2; cl3 = -gamma * cl2 + cl2 + gamma * cl3; CL = (cl0 + 2 * cl1 + 2 * cl2 + cl3) / 6; } #PlotPaintBar(h,l,ol,cl,"강조",IFf(cl>ol,RGB(255,130,36),RGB(126,210,255))); PlotPaintBar(h,l,"강조",IFf(cl>ol,RGB(255,130,36),RGB(126,210,255)));
프로필 이미지
부똘이
2022-12-19
1077
글번호 164656
시스템
답변완료

수식 문의

아래의 수식에서 설정된 시간값에만 지표가 작동하도록 수식을 만들고 싶습니다. 예컨데, 090000~160000으로 입력하면, 그 시간에만 지표& 시그널이 작동하고, 160000~090000까지는 지표값이 멈춰있다가, 090000 시간의 값부터 다시 받아 반영하는 것입니다. 해외선물에서 지표& 시그널을 본장의 움직임만 반영코자 함입니다. 감사합니다. Input : shortPeriod(12), longPeriod(26), Vector(14), Period(9), n(50); Var : MACDv(0), MACDsig(0), macdosc(0), rsi_(0), rsi_signal(0) ; rsi_ = RSI(Period); rsi_signal = MA(RSI(Period), Vector); MACDv = Data2(MACD(shortPeriod, longPeriod)); //MACDsig = Data2(ema(MACDv,Period)); MACDsig = Data2(ema(Data2(MACD(shortPeriod, longPeriod)),Period)); //macdosc = Data2(MACDv-ema(MACDv,Period)); macdosc = Data2(Data2(MACD(shortPeriod, longPeriod))-ema(Data2(MACD(shortPeriod, longPeriod)),Period)); //MessageLog("%f %f %f", rsi_, rsi_signal, macdosc); if macdosc > 0 && rsi_ < n && rsi_ > rsi_signal && rsi_[1] < rsi_signal[1] Then { Buy(); } else if macdosc < 0 && rsi_ > n && rsi_ < rsi_signal && rsi_[1] > rsi_signal[1] Then { Sell(); }
프로필 이미지
부똘이
2022-12-19
1441
글번호 164655
시스템
답변완료

수식하나 부탁합니다

매수조건 ) 5일선 우상향, 20일선 우상향, 캔들-5-20 정배열인 상태에서 캔들이 120선보다 위에 있으면 매수 진입 매도조건 ) 5일선 우하향, 20일선 우하향, 캔들-5-20 역배열인 상태에서 캔들이 120선보다 아래에 있으면 매도 진입 신규진입) 포지션이 아무것도 없을때 매수 또는 매도 조건 만족시 1계약 진입 매수청산) 1계약이 매수 진입된 포지션에서 매도조건 만족시 2계약 매도진입 (1계약 매수청산 및 1계약 매도진입이 동시에 발생) 매도청산) 1계약이 매도 진입된 포지션에서 매수조건 만족시 2계약 매수진입 (1계약 매도청산 및 1계약 매수진입이 동시에 발생) 손절) 모든 경우에 손절 25포인트 시점) 캔들 완성시점이 아니라 조건만족시 즉시 실행
프로필 이미지
shims45
2022-12-18
1082
글번호 164654
시스템
답변완료

수식 문의

안녕하세요? 혹시 이런게 되나요? 참조데이터를 1개 ~ 10개까지 사용하려고 합니다. 어떤 때는 참조데이터 1개만 사용, 또 다른 때에는 참조데이터 10개 사용... 그래서 지표를 하나 만들었는데, 참조데이터가 1개만 있는 경우인데, 그 지표에는 if a1_10 == 1 Then var1 = C; Else if a1_10 == 2 Then var1 = data2(C); Else if a1_10 == 3 Then var1 = data3(C); Else if a1_10 == 4 Then var1 = data4(C); Else if a1_10 == 5 Then var1 = data5(C); Else if a1_10 == 6 Then var1 = data6(C); Else if a1_10 == 7 Then var1 = data7(C); Else if a1_10 == 8 Then var1 = data8(C); Else if a1_10 == 9 Then var1 = data9(C); Else if a1_10 == 10 Then var1 = data10(C); 이런 수식이 들어갔더니 참조데이터가 없어서 에러가 나옵니다. 물론 이 경우에 2째줄부터 마지막줄까지 주석처리해서 따로 만들면 되는데, 다른 해결 방법은 없을까요? 예컨대, 사용할 총 참조데이터들의 수를 인풋으로 받아서 처리하는 방식 등으로요... 감사합니다.
프로필 이미지
에구머니
2022-12-16
979
글번호 164652
지표

캣피쉬 님에 의해서 삭제되었습니다.

프로필 이미지
캣피쉬
2022-12-18
13
글번호 164645
시스템
답변완료

주식

안녕하세요 아래식으로는 진입이 안되네요 Input : t1(10000), t2(8000); If CrossDown(c, t1) Then Buy(); If CrossDown(c, t2) Then Buy(); 제가원하는식은 가령 5분봉기준 현재가가 만원 이하 돌파시 1차 n1 수량 매수 현재가가 8천원 이하 추가돌파시 2차 n2 수량 추가매수 현재가가 총 매수수량 평균가격대비 10% 이하시 전량청산 수고하세요
프로필 이미지
달마7
2022-12-16
891
글번호 164636
시스템