커뮤니티

예스랭귀지 Q&A

글쓰기

[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내

안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
프로필 이미지
예스스탁
2026-02-27
1425
글번호 230811
지표

회원 님에 의해서 삭제되었습니다.

프로필 이미지
회원
2024-07-29
152
글번호 178108
지표

회원 님에 의해서 삭제되었습니다.

프로필 이미지
회원
2024-04-01
23
글번호 178107
지표
답변완료

피라미딩 브레이큰스탑

안녕하세요 항상 도움 주셔서 감사합니다. 아래는 피라미딩 수식입니다. ///////////////////////////////////////피라미딩 전략//////////////////////// Input : asset(100000000),XT1(150000); var : PP(0), R1(0); var : LV(0); PP = (DayHigh(1)+DayLow(1)+DayClose(1))/3; # 피벗기준선 R1 = PP * 2 - DayLow(1); # 피벗1차저항 LV = (DayHigh(1)-DayLow(1))/3; #손절폭 If Bdate[1]!=Bdate Then { Value68=0; Value69=0; Value67=0; } If ExitName(1)=="StopLoss" && MarketPosition==1 && CurrentEntries[1]>CurrentEntries Then Value68=1; If MarketPosition==0 && entriestoday<1 Then // entriestoday는 거래횟수 사용자함수. { Buy("",AtStop,R1,Max(int(E_num(LV,asset,0.01)/20),1)); } If CurrentEntries[1]!=CurrentEntries Then Value67=Value67+1; If MarketPosition==1 && CurrentEntries<Min(E_num(LV,asset,0.01),20) && Value67<Min(E_num(LV,asset,0.01),20) && Value68==0 Then Buy("매수1",AtStop,Highest(H,BarsSinceEntry+1)+PriceScale,Max(int(E_num(LV,asset,0.01)/20),1)); SetStopLoss(LV,PointStop); If NextBarStime==XT1 Then ExitLong(); ///////////////////////////////////////////////////////////////////////////// 여기서 E_num 은 자금관리 사용자 함수로서, 진입 때마다 계약수가 다르게 설정됩니다. *E_num 사용자 수식 : Inputs: N(NumericSimple), Capital(NumericSimple), LossRatio(NumericSimple) ; E_num = Int( (Capital * LossRatio) / (N * BigPointValue) ); /////////////////////////////////////////////////////////////////// 궁금한 점은 각 포지션마다 손절 되게끔 setstoploss 를 걸어놨는데, 또 각 포지션마다 브레이큰스탑도 가능하게 하고 싶습니다. 그 브레이큰의 조건은 다음과 같습니다. //////////////////////////////////////////////////////////////////////// If MarketPosition==1 && Highest(H,BarsSinceEntry+1)>EntryPrice+LV*3 Then ExitLong("브레이큰",AtStop,EntryPrice); ///////////////////////////////////////////////////////////////////////// 이게 단일 포지션 거래 때는 잘 작동되지만, 피라미딩 때는 초기 진입가격에 대한 브레이큰 스탑만 적용됩니다. 각각의 포지션 별로 브레이큰 스탑을 하는 방법을 여쭙고 싶습니다. 항상 도움 주셔서 감사합니다. 건강조심하세요
프로필 이미지
히익
2024-03-31
439
글번호 178106
시스템

회원 님에 의해서 삭제되었습니다.

프로필 이미지
회원
2024-03-31
16
글번호 178105
지표
답변완료

글 알림을 세로로 나오게 해주세요

var : tx(0),편차청산(0); if 편차청산>150 and 편차청산<편차청산[비교봉] and DayHigh>DayHigh[1] Then { tx = Text_New(sDate,sTime,l,"고점청산+반대진입"); Text_SetStyle(tx,2,5); Text_SetSize(tx,22); Text_SetBold(tx,1); Text_SetColor(tx,cyan); } 고점청산+반대진입 글알림이 가로로나오는데 저것을 새로로 나오게수정해주세요. 감사합니다.
프로필 이미지
e편한신호
2024-03-31
642
글번호 178103
지표
답변완료

강조 추세선 부탁 드립니다.

안녕 하세요 Input : Period(20), MultiD1(1), MultiD2(2), MultiD3(3); var : MAv(0),BBup1(0),BBdn1(0),BBup2(0),BBdn2(0),BBup3(0),BBdn3(0); MAv = ma(C,Period); BBup1 = BollBandUp(Period,MultiD1); BBdn1 = BollBandDown(Period,MultiD1); BBup2 = BollBandUp(Period,MultiD2); BBdn2 = BollBandDown(Period,MultiD2); BBup3 = BollBandUp(Period,MultiD3); BBdn3 = BollBandDown(Period,MultiD3); Plot1(MAv, "이평"); Plot2(BBup1, "상단밴드1"); Plot3(BBdn1, "하단밴드1"); Plot4(BBup2, "상단밴드2"); Plot5(BBdn2, "하단밴드2"); Plot6(BBup3, "상단밴드3"); Plot7(BBdn3, "하단밴드3"); 안녕하세요 예스스탁입니다. =================================================================== 1 강조식 input : MaPeriod(6),MaPeriod2(2); var : maOpen(0),maClose(0),maLow(0),maHigh(0); var : haOpen(0),haClose(0),haLow(0),haHigh(0); var : ExtMapBuffer5(0),ExtMapBuffer6(0),ExtMapBuffer4(0),ExtMapBuffer3(0),ExtMapBuffer2(0),ExtMapBuffer1(0); var : ExtMapBuffer7(0),ExtMapBuffer8(0); var : r(0),g(0),b(0); if Index == 0 Then { maOpen=Open; maClose=Close; maLow=Low; maHigh=High; } Else { maOpen=(maOpen[1]*(MAperiod-1)+Open)/MAPeriod; maClose=(maClose[1]*(MAperiod-1)+Close)/MAPeriod; maLow=(maLow[1]*(MAperiod-1)+Low)/MAPeriod; maHigh=(maHigh[1]*(MAperiod-1)+High)/MAPeriod; haOpen=(ExtMapBuffer5[1]+ExtMapBuffer6[1])/2; haClose=(maOpen+maHigh+maLow+maClose)/4; haHigh=Max(maHigh, Max(haOpen, haClose)); haLow=Min(maLow, Min(haOpen, haClose)); if (haOpen<haClose) then { r=0; g=191; b=255; ExtMapBuffer7=haLow; ExtMapBuffer8=haHigh; } else { r=255; g=10; b=0; ExtMapBuffer7=haHigh; ExtMapBuffer8=haLow; } ExtMapBuffer5=haOpen; ExtMapBuffer6=haClose; ExtMapBuffer1=WMA(ExtMapBuffer7,MAperiod2); ExtMapBuffer2=WMA(ExtMapBuffer8,MAperiod2); ExtMapBuffer3=WMA(ExtMapBuffer5,MAperiod2); ExtMapBuffer4=WMA(ExtMapBuffer6,MAperiod2); } PlotPaintBar(ExtMapBuffer2,ExtMapBuffer1,ExtMapBuffer3,ExtMapBuffer4,"강조",Rgb(r,g,b)); 2 시스템 input : MaPeriod(6),MaPeriod2(2); var : maOpen(0),maClose(0),maLow(0),maHigh(0); var : haOpen(0),haClose(0),haLow(0),haHigh(0); var : ExtMapBuffer5(0),ExtMapBuffer6(0),ExtMapBuffer4(0),ExtMapBuffer3(0),ExtMapBuffer2(0),ExtMapBuffer1(0); var : ExtMapBuffer7(0),ExtMapBuffer8(0); var : r(0),g(0),b(0),short(False),long(False); if Index == 0 Then { maOpen=Open; maClose=Close; maLow=Low; maHigh=High; } Else { maOpen=(maOpen[1]*(MAperiod-1)+Open)/MAPeriod; maClose=(maClose[1]*(MAperiod-1)+Close)/MAPeriod; maLow=(maLow[1]*(MAperiod-1)+Low)/MAPeriod; maHigh=(maHigh[1]*(MAperiod-1)+High)/MAPeriod; haOpen=(ExtMapBuffer5[1]+ExtMapBuffer6[1])/2; haClose=(maOpen+maHigh+maLow+maClose)/4; haHigh=Max(maHigh, Max(haOpen, haClose)); haLow=Min(maLow, Min(haOpen, haClose)); if (haOpen<haClose) then { r=0; g=191; b=255; ExtMapBuffer7=haLow; ExtMapBuffer8=haHigh; } else { r=255; g=10; b=0; ExtMapBuffer7=haHigh; ExtMapBuffer8=haLow; } ExtMapBuffer5=haOpen; ExtMapBuffer6=haClose; ExtMapBuffer1=WMA(ExtMapBuffer7,MAperiod2); ExtMapBuffer2=WMA(ExtMapBuffer8,MAperiod2); ExtMapBuffer3=WMA(ExtMapBuffer5,MAperiod2); ExtMapBuffer4=WMA(ExtMapBuffer6,MAperiod2); } short = ExtMapBuffer7[1]>ExtMapBuffer8[1] and ExtMapBuffer7[2]<ExtMapBuffer8[2] and ExtMapBuffer7[0]>ExtMapBuffer8[0]; long = ExtMapBuffer7[1]<ExtMapBuffer8[1] and ExtMapBuffer7[2]>ExtMapBuffer8[2] and ExtMapBuffer7[0]<ExtMapBuffer8[0]; if long Then Buy(); if short Then Sell(); 즐거운 하루되세요 > 흑수돌 님이 쓴 글입니다. > 제목 : 수식 문의 > 아래 지표는 하캔아쉬 지표를 더욱 스무드하게 만든 지표 입니다.. 아래 수식을 예트로 변환하고 싶습니다. 링크 첨부 해 드립니다. 여러 회원님들도 도움 되시기 바랍니다. 이미 문의하신 회원님 계실 수 있겠는데 찾을 수가 없어 다시 문의 드립니다. 부탁좀 드리겠습니다. 감사합니다 ============================================== 아래 두식을 한로직에 같이 쓸수 없나요? 따로 따로 쓸려니가 불편해서요 input : N(10), per1(23.6),per2(38.2),per3(50.0),per4(61.8),per5(76.4); var : HH(0),LL(0); HH = Highest(H,N)[1]; LL = Highest(L,N)[1]; var1 = LL-(HH-LL)*(Per1/100); var2 = LL-(HH-LL)*(Per2/100); var3 = LL-(HH-LL)*(Per3/100); var4 = LL-(HH-LL)*(Per4/100); var5 = LL-(HH-LL)*(Per5/100); Plot1(HH); Plot2(var1,"per1"); Plot3(Var2,"per2"); Plot4(Var3,"per3"); Plot5(Var4,"per4"); Plot6(Var5,"per5"); Plot7(LL); 즐거운 하루되세요 Input : af(0.02), maxAF(0.2); var1 = SAR(af,maxAF); if C > var1 Then PlotPaintBar(High, Low, "파라볼릭",MAGENTA); else NoPlot(1); Input : BWvalue(-2),maperiod(20), RocPeriod(12), stoPeriod1(5), stoPeriod2(3); var1 = BW(maperiod, RocPeriod, stoPeriod1, stoPeriod2); if var1 <= BWvalue Then PlotPaintBar(High, Low, "바이너리웨이브",LGREEN); else NoPlot(1); 좋은 한주 되십시요.
프로필 이미지
요타
2024-08-27
703
글번호 178102
강조
답변완료

신호수식 부탁드립니다

분봉차르에서 선행스팬1 상승. 하락 강조 수식 부탁드립니다
프로필 이미지
박셰프
2024-03-31
732
글번호 178101
강조
답변완료

진입제한 수식

항상 친절한 답변 감사드립니다. 1일 진입 횟수를 제한하고자 할 때 다음 두 식이 어떤 차이가 있나요? 결과에 차이가 없다면 어떤 식을 사용하는 것이 좋은가요? 첫번째 수식 var: count(0), cnt(0); count = 0; for cnt = 0 to 20{if sdate == EntryDate(cnt) Then count = count+1;} var : entry(0); if count < 1 and.... 두번째 수식 if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if entry < 1 and....
프로필 이미지
소총부대
2024-03-31
684
글번호 178100
시스템
답변완료

종목검색부탁드립니다

안녕하세요 A = crossUP(선행스팬1,선행스팬2) [선행스팬1 양운) B = C(가격3일선라인) > 전환선 (캔들이 전환선 라인 위로)1봉전 =< 0봉전 C = 0봉전 전환선> 기준선 D = 0봉전 crossUP(C,전환선) E = 0봉전(기준선,전환선)1봉전 =< 0봉전 F = 0봉전 CrossUp(StochasticsSlow(Period1,Period2), eavg(StochasticsSlow(Period1,Period2),Period3)); [Period1,2,3 = 5,3,3]; G = 0봉전 crossUP(C, 신고가3)[OR) crossUP(C, 신고가5) 감사합니다
프로필 이미지
박셰프
2024-03-31
871
글번호 178099
종목검색