커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

문의드립니다

당일피봇1차저항과1차지지에서0.382선과0.618선으로나타내게부탁드립니다
프로필 이미지
장군
2017-02-06
109
글번호 106538
지표
답변완료

문의드립니다.

안녕하세요. 활기찬 한 주 시작하세요.. 아래내용을 수식 부탁드립니다. 1.매수 진입조건 : 기준선 위에서 MACD 골든크로스 하면 매수진입 A조건 : 5일이평선 우상향 이면 점수를 20% 저장 B조건 : 거래량 1000 초과돌파 하면 점수를 15% 저장 C조건 : 5일선이 60일선 골든크로스 하면 점수를 20% 저장 D조건 : MACD 오실레이터 빨강막대그래프 높이가 1봉전 보다 높으면 점수를 20% 저장 E조건 : 1봉전 매수진입신호 완성 점수를 30% 저장 1봉전 매수진입신호가 완성됐고 매수진입 완성봉의 2봉전(현재기준으로는 3봉전) 부터 완성봉(현재기준 1봉전) 까지의 범위에서 A~E조건 중 해당되는 조건의 합계가 50% 미만 이면 aa.wav 파일 실행, 해당되는 조건의 합계가 60%이상 70%미만 이면 bb.wav 파일 실행, 해당되는 조건의 합계가 70% 초과 이면 cc.wav 파일 실행 2.매도 매수의 반대조건에 점수는 동일한 값 저장하고 조건의 합계에 따른 실행 파일명도 동일 3.종목별 신호발생 확인가능 수식 현재 차트에는 오일 차트로 S 라는 시스템트레이딩이 가동 중이라고 할때 골드 종목에서 S 시스템의 진입신호가 발생하면 a.wav 파일 실행하는게 가능한가요? a.wav 파일이 실행되면 골드를 차트로 불러와서 볼 수 있게 말이죠. 수고하세요 ^^
프로필 이미지
웹피
2017-02-06
101
글번호 106537
시스템
답변완료

수식점검 부탁드립니다.

#매수 매도가 이루어 지지않습니다. 확인좀 부탁드립니다. # 운영시간 (09:00~06:00) 종료시간 모두 청산 # 10, 30, 60, 120선 정배열 and 5선 10일선 crosseup하면 매수 # 10, 30, 60, 120선 역배열 and 5선 10일선 crossdown하면 매도 # 20틱 하락시 시장가 청산 # 매수시 5일선이 20일선을 아래로 내려가면 청산 # 매도시 5일선이 20일선을 위로 올라가면 청산 input : P1(5),P2(10),P3(20),P4(30),P5(60),P6(120),시작시간(90000),종료시간(60000), AA(20),BB(20);; var : mav5(0),mav10(0),mav20(0),mav30(0),mav60(0),mav120(0),T(0),Tcond(false),Xcond(false); var : BH(0), SL(0),T1(0); mav5 = ma(c,P1); mav10 = ma(c,P2); mav20 = ma(c,P3); mav30 = ma(c,P4); mav60 = ma(c,P5); mav120 = ma(c,P6); if stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간) Then { Tcond = false; if MarketPosition == 1 Then ExitLong("종료시간 매수청산"); if MarketPosition == -1 Then ExitShort("종료시간 매도청산"); } if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then { T = 0; Tcond = true; Xcond = false; } if TotalTrades > TotalTrades[1] and (IsExitName("매수청산",1) or IsExitName("매도청산",1)) Then Xcond = true; If (mav10[1] < mav30[1] OR mav30[1] < mav60[1] OR mav60[1] < mav120[1]) AND (mav10 > mav30 AND mav30 > mav60 AND mav60 > mav120) Then T == 1 ; If (mav10[1] > mav30[1] OR mav30[1] > mav60[1] OR mav60[1] > mav120[1]) AND (mav10 < mav30 AND mav30 < mav60 AND mav60 < mav120) Then T == -1 ; if Tcond == true and Xcond == false then { if MarketPosition == 0 and T == 1 and CrossUp(Mav5,Mav10) Then buy("S매수"); if MarketPosition == 0 and T == -1 and CrossDown(Mav5,Mav10) Then sell("B매도"); } if MarketPosition == 1 Then { BH = highest(H,BarsSinceEntry); ExitLong("손실매수청산",AtStop,EntryPrice-PriceScale*AA); if CrossDown(mav5,mav20) Then exitlong("20일선매수청산"); } if MarketPosition == -1 Then { BH = highest(H,BarsSinceEntry); ExitLong("손실매도청산",AtStop,EntryPrice-PriceScale*AA); if CrossUp(mav5,mav20) Then exitlong("20일선매도청산"); }
프로필 이미지
바바큰
2017-02-05
95
글번호 106536
시스템
답변완료

통합 신호 가능 유무

Input : shortPeriod(12), longPeriod(26); Var : value(0); value = MACD(shortPeriod, longPeriod); # 매수/매도청산 If CrossUP(value, 0) Then { Buy(); } # 매도/매수청산 If CrossDown(value, 0) Then { Sell(); } ------------------------------------------------------- 첫번째 시스템 수식 Input : shortPeriod(5), longPeriod(20); value1 = ma(C, shortPeriod); value2 = ma(C, longPeriod); # 매수/매도청산 If CrossUP(value1, value2) Then { Buy(); } # 매도/매수청산 If CrossDown(value1, value2) Then { Sell(); } --------------------------------------------------------2번째 수식 궁금한 부분이 있습니다. 1. 1번과 2번에서 먼저 신호가 뜨면 진입하는 것도 가능한지요..(1번과 2번이 무포지션인 경우입니다.) 2. 1번 신호와 2번 신호를 같이 보고 있다가 1번 신호에서 매수 싸인이 뜨면 진입하고... 청산은 2번 신호에서 하고 싶다면.. 이런 식으로 교차 신호가 가능한지요. 3. 1번 신호가 매도 신호 중이고 2번이 매수면 진입 안하고 1번이 무포지션인 경우 2번에 신호 발생 시 진입합니다. 1번 무포 2번 신호 --->>2번 신호진입 1번 매수 2번 매도 진입 없음 1번 매도 2번 매수 진입 없음 1번 신호 2번 무포 --->>1번 신호진입 설명이 이해가 되었는지 모르겠네요... 가능여부와 수식 부탁드립니다..
프로필 이미지
타잔94
2017-02-05
104
글번호 106535
시스템
답변완료

문의드립니다

안녕하세요 아래지표식에서 추세선막대기가 형성되는순간마다 수치전환수직선이 그려지는것을원합니다. 추세선확정과상관없이 무조건 추세선막대기가 새롭게 형성될때(그려질때) 마다 수치전환수직선이 그려지면 됩니다 .사진한장첨부했습니다 감사합니다 Input:length(12); Var:j(0),lastHiVal(0),lastLoVal(0),turnPntBit(""),TL1(0); Array:valArr[10](0),barArr[10](0),turnPntArr[10](""); For j = 0 To 9 { barArr[j] = barArr[j] + 1; } Condition1 = Highest(H,length) == H and lastHiVal <> H; Condition2 = Lowest(L,length) == L and lastLoVal <> L; If Condition1 Then lastHiVal = H; If Condition2 Then lastLoVal = L; turnPntBit = ""; If Condition1 and Condition2 Then { If Max(valArr[1],valArr[2]) < H and Min(valArr[1],valArr[2]) > L Then turnPntBit = "HiLo"; Else If Max(valArr[1],valArr[2]) < H Then turnPntBit = "Hi"; Else If Min(valArr[1],valArr[2]) > L Then turnPntBit = "Lo"; } Else If Condition1 Then turnPntBit = "Hi"; Else If Condition2 Then turnPntBit = "Lo"; If turnPntBit <> "" Then { If turnPntBit == "HiLo" Then { valArr[1] = IFF(turnPntArr[1] == "Hi",H,L); barArr[1] = 0; TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]); If turnPntArr[1] == "Hi" Then turnPntBit = "Lo"; Else turnPntBit = "Hi"; } If turnPntBit <> turnPntArr[1] Then { for j = 8 downto 1 { valArr[j+1] = valArr[j]; barArr[j+1] = barArr[j]; turnPntArr[j+1] = turnPntArr[j]; } } If turnPntBit <> turnPntArr[1] or (turnPntBit == turnPntArr[1] and ((turnPntBit == "Hi" and valArr[1] < H) or (turnPntBit == "Lo" and valArr[1] > L))) Then { valArr[1] = IFF(turnPntBit == "Hi",H,L); barArr[1] = 0; turnPntArr[1] = turnPntBit; If turnPntArr[1][1] <> turnPntArr[1][0] Then{ TL1 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2], sDate[barArr[1]],sTime[barArr[1]],valArr[1]); PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");//소리출력 } Else TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]); } } TL_SetSize(TL1,4); TL_SetColor(TL1,GREEN); Plot1(Highest(H,length)); Plot2(Lowest(L,length));
프로필 이미지
매일
2017-02-05
231
글번호 106534
지표
답변완료

부탁합니다

일봉이나 주봉을 차트에서 볼 때 월봉의 흐름을 같이 보고 싶은데요. 월봉의 스토캐스틱 (25,6,6)을 나타내는 지표식 부탁합니다. 일봉이나 월봉 차트에서 구현될 수 있도록 부탁합니다
프로필 이미지
미래테크
2017-02-04
135
글번호 106533
지표
답변완료

수식문의 드립니다.

안녕하세요 하기 수식 구현이 가능하신지 검토 부탁드립니다. 1. 금일 신고점이 발생합니다. 2. 스토캐스틱이 과매수 구간을 탈출합니다. 3. 현재 봉이 볼린져 밴드 상단 접촉을 더 이상하지 않고 볼린져 밴드에서 떨어집니다. 상기 세가지가 충족되면 매도 진입합니다. 반대상황에서는 매수 진입합니다. 전일 최고점과 최저점을 나타내는 지표식도 같이 부탁드립니다. 감사합니다.
프로필 이미지
softtoug
2017-02-06
125
글번호 106532
시스템
답변완료

부탁드립니다.

도움 주심에 감사 드립니다. 지정된 일시 외에도 다음날에도 지표가 나타 나고 있습니다. 오직 지정된 일시에만 나타 내고 싶습니다. 미리 감사 드립니다. input:시작년월일(20170202),시작시각(080000); input:종료년월일(20170202),종료시각(153000); input: Period1(12),Period2(26),Period3(9); variables: VolumeValue( 0 ), MedPrice( 0 ), PV( 0 ),StartCalcDate(0),StartTime(0), CumulativeVolume( 0 ), CumulativePV( 0 ), Started( false ), Denom( 0 ), KeyCumVol( 0 ), KeyCumPV( 0 ), MidasValue( 0 ),endCalcDate(0),endTime(0) ; Var : Ep1(0), JISU1(0),Ep2(0), JISU2(0),Ep3(0),Jisu3(0); var : MACDVal(0),MACDSig(0),ii(0),SD(false),ED(false); Ep1 = 2/(Period1+1); Ep2 = 2/(Period2+1); Ep3 = 2/(Period3+1); StartCalcDate=시작년월일; StartTime=시작시각; endCalcDate=종료년월일; endTime=종료시각; if SD == false and sdate >= StartCalcDate Then SD = true; if SD == true and stime >= StartTime Then Started = true; if Started == true and ED == false and sdate >= endCalcDate Then ED = true; if Started == true and ED == true and stime >= endTime Then Started = false; if Started == true then { VolumeValue = iff( DataCompress < 1, Ticks, Volume ) ; MedPrice = (H + L)/2 ; PV = MedPrice * VolumeValue ; CumulativeVolume = VolumeValue + CumulativeVolume ; CumulativePV = PV + CumulativePV ; } if Started == true and Started[1] == false then { Started = true ; Denom = 1 ; KeyCumVol = CumulativeVolume ; KeyCumPV = CumulativePV ; } else if Denom >= 1 then Denom = CumulativeVolume - KeyCumVol ; if Started then { if Denom > 1 then MidasValue = ( CumulativePV - KeyCumPV ) / Denom ; else if Denom == 1 then MidasValue = MedPrice ; ii = ii+1; if ii <= 1 then { JISU1 = MidasValue; JISU2 = MidasValue; MACDVal = JiSu1-Jisu2; MACDsig = MACDVal; } else{ JISU1 = MidasValue * EP1 + JISU1[1] * (1-EP1); JISU2 = MidasValue * EP2 + JISU2[1] * (1-EP2); MACDVal = JiSu1-Jisu2; MACDsig = MACDVal * EP3 + MACDsig[1] * (1-EP3); } plot1(MACDVal); plot2(MACDsig); PlotBaseLine1(0); }
프로필 이미지
yes
2017-02-05
145
글번호 106531
지표

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

프로필 이미지
khj012
2017-02-04
34
글번호 106530
지표