커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

수식 부탁드립니다.

수고하십니다. input : K(5); var1 = wma(c,K); var2 = ma(c,K); plot1(var1); plot2(var2); 위 수식을 색채우기를 하여 사용하고 있는데 다른 지표와 혼용하여 사용할때 불편함이 있어 차트아래(MACD처럼) 막대지표로 별도 사용 할려고 합니다. 0선을 기준으로 Golden=Dead Cross가 표시되게 하여 주시고 골크때 wma기울기가 상승이면 빨강색 하락이면 파랑색 데크일때도 wma기울기가 상승이면 빨강색 하락이면 파랑색으로 표시되게 수식변경 부탁드립니다 감사합니다.
프로필 이미지
가자치타
2024-10-21
659
글번호 184462
지표
답변완료

지표 통합 부탁드립니다.

안녕하세요 세가지 지표를 한번에 표현하고 싶습니다. 볼린저밴드 (20) + 삼각가중(10) + 지수이평 5 입니다. * 수치는 변수 부탁드립니다. 감사합니다
프로필 이미지
라몬
2024-10-21
653
글번호 184461
지표
답변완료

분봉에 윌리엄 적용

1 분봉에 일봉 윌리엄%R 표시 할수 있게 지표 수식 부탁드려요 건강하세요
프로필 이미지
뽀스뽀스
2024-10-21
596
글번호 184454
지표

가자치타 님에 의해서 삭제되었습니다.

프로필 이미지
가자치타
2024-10-21
6
글번호 184451
지표
답변완료

시스템 식에서의 청산 조건을 예스랭귀지로 구현 부탁드립니다.

트레일링 스탑을 활용하고자 하는데, SetStopTrailing 함수로 구현하기에는 한계가 있어보여 문의드립니다. 요청드리고자하는 청산 조건은 다음과 같습니다. 1) 매수 혹은 매도 포지션을 보유한 상태에서 2) 최소수익을 터치하는 조건 : 진입 후 내가 확보한 수익이 한번이라도 "1계약당 n틱 수익"에 도달한 적이 있다면, (청산시점에서 "계약당 n틱 수익 중"이 아니라, 진입 이후 해당 기준에 도달한적 있는지 여부 확인) 3) 지표 조건 : 2번 조건이 충족된 가운데, ma1 이 ma2 를 하향돌파할 시 매수청산 (매도청산은 ma1이 ma2를 상향돌파시 매도청산) 위 조건을 만족하는 시스템 청산식을 예스랭귀지로 구현 부탁드릴 수 있을까합니다. 감사합니다.
프로필 이미지
penfold
2024-10-21
650
글번호 184450
시스템
답변완료

수식 부탁드립니다.

안녕하ㅔ요? 아래의 지표수식을 상승의 추세선 유지후 하락의 추세선이 발생시에 경고의음이 나오고 발생된 순간시점의 봉에 굵은 점표시 생기고 추세선은 기존의 수식대로 그려지게 해주시면 감사하겠습니다. 항상 도움에 감사드립니다. input : Period(250),선두께(3); Var:상승색(Red), 하락색(Blue); Var:j(0),T(0); Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0),tl9(0), date21(0),date22(0),time21(0),time22(0), date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0); var : box1(0),box2(0),box3(0),box4(0); Plot1(0); 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]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,하락색); date21 = date[HiBar[0]]; time21 = stime[HiBar[0]]; date22 = date[0]; time22 = stime[0]; box1 = Box_New(sdate,stime,LoVal[0]-0.25,NextBarSdate,NextBarStime,LoVal[0]-0.50); Box_SetColor(box1,Green); Box_SetFill(box1,true); box2 = box1[1]; Box_SetEnd(box2,Sdate,Stime,LoVal[1]-0.50); } If LoVal[0] > L Then { LoVal[0] = L; LoBar[0] = 0; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL_SetEnd(TL1, date12,time12,Value12); date22 = date[0]; time22 = stime[0]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); Box_SetBegin(box1,sDate,sTime,LoVal[0]-0.25); Box_SetEnd(box2,Sdate,Stime,LoVal[1]-0.50); } } 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]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,상승색); date31 = date[LoBar[0]]; time31 = stime[LoBar[0]]; date32 = date[0]; time32 = stime[0]; box3 = Box_New(sdate,stime,HiVal[0]+0.25,NextBarSdate,NextBarStime,HiVal[0]+0.50); Box_SetColor(box3,Yellow); Box_SetFill(box3,true); box4 = box3[1]; Box_SetEnd(box3,Sdate,Stime,HiVal[1]+0.50); } If HiVal[0] < H Then { HiVal[0] = H; HiBar[0] = 0; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL_SetEnd(TL1, date12,time12,Value12); date32 = date[0]; time32 = stime[0]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); Box_SetBegin(box3,sDate,sTime,HiVal[0]+0.25); Box_SetEnd(box4,Sdate,Stime,HiVal[1]+0.50); } } Box_SetEnd(box1,NextBarSdate,NextBarStime,LoVal[0]-0.5); Box_SetEnd(box3,NextBarSdate,NextBarStime,HiVal[0]+0.5); TL_SetSize(TL1,선두께);
프로필 이미지
천년대로
2024-10-21
684
글번호 184449
시스템
답변완료

후행스팬을 앞으로

후행스팬을 선행스팬1,2처럼해서 51일 앞으로 해서 종가가 앞으로 간 후행스팬을 돌파하려면 종목검색식을 어떻게 하나요?
프로필 이미지
占쏙옙占쏙옙占쏙옙
2024-10-21
647
글번호 184445
종목검색

무한상인 님에 의해서 삭제되었습니다.

프로필 이미지
무한상인
2024-10-21
1
글번호 184436
시스템
답변완료

수식추가

Inputs : Period(20), Sence(1.5), CC_DN(Yellow); Vars: VLineUp(0), VLineDn(0), HHighest(0), LLowest(0), JustChanged(FALSE), VLine(0), DBN(0); Array: Highs[35](0), Lows[35](0), RRange[35](0), UpWave[1](FALSE), DnWave[1](FALSE); If STime == 180000 Then DBN = 0; DBN = DBN + 1; Var1 = Period; Var2 = Var1 - 1; Var3 = Var1 - 2; Var5 = Sence; Var6 = H-L; JustChanged = FALSE; if CurrentBar <= Var2 then begin Highs[CurrentBar] = Close; Lows[CurrentBar] = Close; RRange[CurrentBar] = (H-L) /2; end; if CurrentBar == Var1 then begin if Highs[Var2] >= Highs[Var3] then begin UpWave[1] = TRUE; HHighest = Highs[Var2]; VLineUp = HHighest - (Var5 * MA(Var6,Var2)); #Plot1(VLineUp,"VLineUp"); end; if Highs[Var2] < Highs[Var3] then begin DnWave[1] = TRUE; LLowest = Lows[Var2]; VLineDn = LLowest + (Var5 * MA(Var6,Var2)); #Plot2(VLineDn,"VLineDn"); end; end; if CurrentBar > Var1 then begin if DnWave[1] and Close > VLineDn then begin DnWave[1] = FALSE; UpWave[1] = TRUE; JustChanged = TRUE; HHighest = Close; LLowest = 0; end; if UpWave[1] and Close < VLineUp and JustChanged == FALSE then begin UpWave[1] = FALSE; DnWave[1] = TRUE; JustChanged = TRUE; LLowest = Close; HHighest = 0; end; if JustChanged == FALSE then begin if Close > HHighest then HHighest = Close; else if Close < LLowest then LLowest = Close; end; VLineUp = HHighest - (Var5 * MA(Var6,Var2)); VLineDn = LLowest + (Var5 * MA(Var6,Var2)); /*if UpWave[1] then Plot1(VLineUp,"VLineUp", Red); else if DnWave[1] then Plot1(VLineDn,"VLineUp", Blue); */ end; input : P(10),short(12),long(26),sig(9); var : mav(0),macdo(0); mav = ma(C,P); MACDo = MACD_OSC(short,long,sig); if upwave[1] and c > o and mav > mav[1] Then Buy(); if dnwave[1] and c < o and mav < mav[1] Then Sell(); if MarketPosition == 1 Then { if dnwave[1] and macdo < 0 Then ExitLong("bx"); } if MarketPosition == -1 Then { if upwave[1] and macdo > 0 Then ExitShort("sx"); } 안녕하세요 위식에 추가식 부탁드림니다 Date 2 30분봉 매수 기존식에 30분봉 양봉일때 매수 매도 기존식에 30분봉 음봉일때 매도
프로필 이미지
아트정
2024-10-21
651
글번호 184435
시스템
답변완료

질문드리겠습니다

수고가 많으십니다. 궁금증이 해소가 잘 안돼서 몇 가지 여쭤보고 싶습니다 먼저 수식은 아래와 같습니다 var : N(0),cnt(0),hh(0),hb(0),ll(0),lb(0),TL(0),TXn(0),txper(0),TXpaa(0),nline(0),tl2(0); var : txx(0),TXper1(0); var : hd(0),ht(0),hd1(0),ht1(0),hv(0),hv1(0), LD(0), LT(0), LV (0), LD1(0), LT1(0),LV1(0); var:TLH(0),TLH1(0),TLH2(0),TLH3(0),TLH4(0),TLH5(0), TLL(0),TLL1(0),TLL2(0),TLL3(0),TLL4(0),TLL5(0); VAR: INTERTL(0); N=5; if CountIf(H >= L*1.15,N) >= 1 Then { hh = 0; hb = 0; ll = 0; lb = 0; For cnt = 0 to n-1 { if hh == 0 or (hh > 0 and h[cnt] > hh) Then { hh = h[cnt]; hb = cnt; } if ll == 0 or (ll > 0 and l[cnt] < ll) Then { ll = l[cnt]; lb = cnt; } } # PLOT66(IndeX,"IndeX",ReD); # PLOT67(HH); if (hB < lB AND ll *1.18 <HH and (hh != Var3 and ll != Var4) ) OR (hB > lB AND LL>HH*0.70 and (hh != Var3 and ll != Var4) ) Then { VAR3 = hh; VAR4 = ll; VAR1 = Index[lb]; VAR2 = VAR1[1]; PLOT38(VAR1); VAR11=IndeX-VAR1 ; if VAR2 > 0 Then { VAR5 = 0; For cnt = Index-var1 to Index-var2 { if Var5 == 0 or (Var5 > 0 and h[cnt] > Var5) Then Var5 = h[cnt]; } # PLOT35(VAR5,"INTER TL HH",OrangE,DeF,2); #PLOT37(MA(Var5,5),"37",ReD,DeF,2); } if var1 >= Var2 Then { TL = TL_New(sDate[lb],sTime[lb],ll,sDate[hb],sTime[hb],hh); TL_SetDrawMode(tl,1); TL_SetColoR(TL,Cyan); # TL_SetExtRight(tl,true); # TL_new(sDate[LB],sTime[LB],0,sDate[lb],sTime[lb],90000000); TXper= text_new(sDate[lb],sTime[lb],ll,"★"); Text_SetStyle(txper,2,0); Text_SetSizE(TXPER,18); Text_SetColor(txper,MagentA); TXpaa= text_new(sDate[HB],sTime[HB],HH,"★"); Text_SetStyle(TXPAA,2,0); Text_SetSizE(TXPAA,13); Text_SetColor(tXPAA,Green); # Text_SetLocatioN(TXPAA } } } if lb > hb Then { TL_SetColor(TL,ReD); TL_SetSize(tl,0); TL_SetDrawMode(tl,1); } Else { TL_SetColor(TL,LightBlue); TL_SetSize(tl,1); } If VAR5 > 0 Then { PLOT36(VAR5,"INTER TL HH",BluE,DeF,1); } 먼저 최상위 조건을 if CountIf(H >= L*1.15,N) >= 1 로 했을때 조건 만족 구간과 고가저가값 구하는 방식 그리고 봉번호와의 관계에 대해 여쭤보고 싶고요 수식 막바지 부분 if lb > hb 조건에서 우상향 (lb 이 먼저나오고 hb 가 뒤에 나올경우), 우하향 하는 경우를 색으로 구분을 했는데 우하향 (lightblue)이 우상향에서 나타나는 경우가 있습니다 그리고 if VAR2 > 0 Then { VAR5 = 0; For cnt = Index-var1 to Index-var2 { if Var5 == 0 or (Var5 > 0 and h[cnt] > Var5) Then Var5 = h[cnt]; } } 이 부분에서 LB (저점) 사이에서의 고가를 구하는건데 index 관련해서 헷갈리는 점들이 있고 var5 가 나타나는 시점이 일정치 않아서 질문드리고 싶습니다 유선상으로 여쭤보면 좋을거 같아서 연락주시면 감사하겠습니다
프로필 이미지
yamu
2024-10-21
845
글번호 184434
지표