커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

함수요청

안녕하세요? 함수 요청드립니다. 매수와 매도로 이루어진 리버스 전략입니다. 매수 : 볼린저밴드 상단과 하단이 동시에 양의 기울기 일 때 진입 매도 : 볼린저밴드 상단과 하단이 동시에 음의 기울기 일 때 진입 n-2번째와 n-1번째 봉으로 생성된 볼린져 밴드 상하단의 두 기울기를 비교하여 현재봉(n번째) 시가에 진입
프로필 이미지
흰둥이아빠
2019-05-17
261
글번호 128775
시스템
답변완료

년봉시초가 지표 부탁드립니다.

연봉과 3년봉 시초가를 각각 표시하는 지표작성 부착드립니다.
프로필 이미지
무지개나날들
2019-05-17
267
글번호 128774
지표
답변완료

부탁드립니다

62545번 추가부탁 직전30분봉 시가와 종가선 몸통중심선(시가+종가/2)도 나타나게 해주시면 감사하겠습니다
프로필 이미지
매화산삼
2019-05-17
242
글번호 128771
지표
답변완료

미체결및 무 포지션에서 청산 신호 처리 안되도록 하는 방법 문의

안녕하세요 미체결로 인하여 가끔가다가 매매가 원치 않는 방향으로 흘러가는것 같습니다. 1. 예스글로발에서는 미체결을 예방을 위한 방법으로 설정의 매매가격(호가)과 부가기능의 시간 자동정정주문 외에 수식으로 처리하는 방법은 없는지요 ? 2. 나스닥의 차트및 (자동매매)전략을 실행한 상태가 위 그림과 같다고 할때, 전략의 실행시점은 파란색 (실행) 화살표 시점입니다. 그런데, 차트에서는 이전 (초록색) 매수신호가 발생한 모양으로 (매수신호유지 상태로) 그다음은 매수청산 신호가 발생될 것입니다. 그런데, 매수진입 포지션이 없는 관계로 매수 청산신호에 원치 않게 매도 진입을 하게 되는데요,,,, 이처럼 진입포지션이 없는 경우에는 매수청산이나 매도청산신호에 매도/매수를 하지 않도록 수식 또는 다른방법으로 설정하는 방법은 없는지요 ? 3. (1)번처럼 매수신호가 미체결되는 경우에도 (매수되지않은) 매수 청산신호에 (원치않게) 매도처리되는 경우도 수식으로 예방할수 있다면, 수식을 부탁드립니다. 감사합니다.
프로필 이미지
워싱턴
2019-05-17
258
글번호 128769
시스템

왕경태 님에 의해서 삭제되었습니다.

프로필 이미지
왕경태
2019-05-17
0
글번호 128763
검색
답변완료

0930분 이전 진입 안하는 방법 문의

1. 상황; 아래 식 case1과 case2 간에는 //{Long Entry} 에서 if sTime > 093000 와 if sTime > 093000 and stime < 151500 and stime != 151500 차이밖에는 없고 15분봉 차트, <시스템트레이딩 설정>창에서 둘 다 <강제청산> 150000 에 걸어 놓은 상태입니다만 case1은 0930분 이전에 매수신호가 뜨고, case2는 매수신호가 안뜨는데 이유를 알고 싶습니다. 목적은 0930분 이전에는 매매를 안하려하는데, "stime > 093000" 만으로는 식 만족이 안되는 건가요? "stime < 151500 and stime != 151500"를 써 넣은 이유는 잘 몰라서 어떤 차이가 있는지 보려고 했던 겁니다만 목적에 맞는 올바른 식을 알려 주시면 감사하겠습니다. 2.원하는 식' - 아래 기본식에서 0930이전에는 매매 안하고(주식거래) - 동일한 식으로 시황에 따라, 당일청산과 오버나잇을 전환키 위해 <시스템트레이딩 설정> 창에서 <강제청산 탭>의 당일청산 체크여부를 활용하고 있는 중입니다. * 위 case 둘 다 당일청산에 체크하여 진행된 상태입니다. 감사합니다. ---< 아 래 >--- [ case1 ] : 0930이전에 매수신호 뜸. Inputs: Length1(10), Length2(9), IPS(3),StopPer(1.2); Variables: ATRv(0), L2(0); If CurrentBar == 1 Then L2 = MinList(Length1, Length2); ATRv = ATR(10); //{Long Entry} if sTime > 093000 Then Buy("B",AtStop,Highest(High, Length1) + 1); If MarketPosition() == 1 Then Begin //{Long Protective Stop} ExitLong("EXL1",AtStop,EntryPrice - IPS * ATRv); //{Long Exit} ExitLong("EXL2",AtStop,Lowest(Low, L2) - 1); SetStopLoss(StopPer,PercentStop); End; ----------------------------------------- [ case2 ] : 0930 이전에 매수신호 안뜸. Inputs: Length1(10), Length2(9), IPS(3),StopPer(1.2); Variables: ATRv(0), L2(0); If CurrentBar == 1 Then L2 = MinList(Length1, Length2); ATRv = ATR(10); //{Long Entry} if sTime > 093000 and stime < 151500 and stime != 151500 Then Buy("B",AtStop,Highest(High, Length1) + 1); If MarketPosition() == 1 Then Begin //{Long Protective Stop} ExitLong("EXL1",AtStop,EntryPrice - IPS * ATRv); //{Long Exit} ExitLong("EXL2",AtStop,Lowest(Low, L2) - 1); SetStopLoss(StopPer,PercentStop); End; --------------------------------------------------------------
프로필 이미지
theogo66
2019-05-17
252
글번호 128762
시스템
답변완료

문의

아래 오실레이터 식에서 스탑스트레일링으로 하니 추세장에서 길게 먹지 못하네요 1. 재진입 - OSC 절대값이 다시 상승하면 재진입 .. 한번만 .. 2. 비추세 장에서 매매가 너무 잘주 일어나는데 줄이려면 뭘 추가해야 하나요 ? Input:ChgRate(0.3); Var:Row(0),Col(0),hiBar(0),loBar(0),HiCond(False),LoCond(False), LastStat(0),WorkBit(0); Var:HA_C(0),HA_O(0),HA_H(0),HA_L(0); Var:ZzOsc(0); Array : HiZZ[10,4](0), // 열번호 1:가격,2:Index,3:sDate,4:sTime LoZZ[10,4](0); #==========================================# HA_C = (O+H+L+C)/4; If IsNaN(HA_O[1]) Then HA_O = O; Else HA_O = (HA_O[1]+HA_C[1])/2; HA_H = max(H,HA_O,HA_C); HA_L = min(L,HA_O,HA_C); If Index == 1 Then { HiZZ[1,1] = HA_H; HiZZ[1,2] = 0; HiZZ[1,3] = sDate; HiZZ[1,4] = sTime; LoZZ[1,1] = HA_L; LoZZ[1,2] = 0; LoZZ[1,3] = sDate; LoZZ[1,4] = sTime; } If Index > 0 Then { hiBar = hiBar + 1; loBar = loBar + 1; } If HA_H[hiBar] < HA_H Then hiBar = 0; If HA_L[loBar] > HA_L Then loBar = 0; HiCond = LoZZ[1,1] * (1 + (ChgRate/100)) < HA_H and hiBar == 0; LoCond = HiZZ[1,1] * (1 - (ChgRate/100)) > HA_L and loBar == 0; WorkBit = 0; If HiCond and LoCond Then { If HiZZ[1,1] < HA_H and LoZZ[1,1] > HA_L Then { If HA_H - HiZZ[1,1] > LoZZ[1,1] - HA_L Then WorkBit = 1; Else If HA_H - HiZZ[1,1] < LoZZ[1,1] - HA_L Then WorkBit = -1; Else If LastStat == -1 Then WorkBit = 1; Else WorkBit = -1; } Else If LoZZ[1,1] > HA_L Then WorkBit = -1; Else If HiZZ[1,1] < HA_H Then WorkBit = 1; Else If LastStat == -1 Then WorkBit = 1; Else WorkBit = -1; } Else If HiCond Then WorkBit = 1; Else If LoCond Then WorkBit = -1; #==========================================# If WorkBit == 1 Then { If LastStat == -1 Then { For Row = 10 DownTo 2 { For Col = 1 To 4 { HiZZ[Row,Col] = HiZZ[Row-1,Col]; } } HiZZ[1,1] = HA_H; HiZZ[1,2] = Index; HiZZ[1,3] = sDate; HiZZ[1,4] = sTime; hiBar = -1; loBar = -1; } Else If HiZZ[1,1] < HA_H Then { HiZZ[1,1] = HA_H; HiZZ[1,2] = Index; HiZZ[1,3] = sDate; HiZZ[1,4] = sTime; hiBar = -1; loBar = -1; } LastStat = 1; } #==========================================# If WorkBit == -1 Then { If LastStat == 1 then { For Row = 10 DownTo 2 { For Col = 1 To 4 { LoZZ[Row,Col] = LoZZ[Row-1,Col]; } } LoZZ[1,1] = HA_L; LoZZ[1,2] = Index; LoZZ[1,3] = sDate; LoZZ[1,4] = sTime; hiBar = -1; loBar = -1; } Else If LoZZ[1,1] > HA_L then { LoZZ[1,1] = HA_L; LoZZ[1,2] = Index; LoZZ[1,3] = sDate; LoZZ[1,4] = sTime; hiBar = -1; loBar = -1; } LastStat = -1; } ZzOsc = HA_C - IFF(LastStat == -1,HiZZ[1,1],LoZZ[1,1]); input: n(0.5), n1(2), n2(1.3); If CrossUp(ZzOsc,0) Then Buy("B"); If CrossDown(ZzOsc,0) Then Sell("S"); SetStopTrailing(n,n1,PointStop); setstoploss (n2,pointstop);
프로필 이미지
구다이전설
2019-05-17
239
글번호 128760
시스템
답변완료

총손익과 특이치 제거 총손익이 다른데요..보통 특이치제거 총손익이 낮은 값이

총손익과 특이치 제거 총손익이 다른데요..보통 특이치제거 총손익이 낮은 값이나오는데 어떤 전략은 특이치제거 총손익 총손익보다 높게 나오는것도 있는데 그것은 무슨 의미인지 알려주세요~ 그리고 총손익이 과 특이치 제거 총손익이 신뢰성이 실제로 구현했을때 어느쪽에 가깝게 되는지 알려주세요~
프로필 이미지
이형지
2019-05-17
273
글번호 128758
시스템
답변완료

수식 부탁드립니다

1. 당일 바닥에서 7번째 캔들 고가를 표시한다(A) 당일 바닥에서 1번째 캔들 저가를 표시한다(B) A~B 중심을 표시한다 A~B상방 대칭을 표시한다 A~B하방 대칭을 표시한다 당일 천정에서 7번째 캔들 저가를 표시한다(C) 당일 천정에서 1번째 캔들 고가를 표시한다(D) C~D 중심을 표시한다 C~D상방 대칭을 표시한다 C~D하방 대칭을 표시한다 2. 당일 바닥에서 7번째 양봉 고가를 표시한다(E) 당일 바닥에서 1번째 양봉 저가를 표시한다(F) E~F 중심을 표시한다 E~F상방 대칭을 표시한다 E~F하방 대칭을 표시한다 당일 천정에서 7번째 음봉 저가를 표시한다(G) 당일 천정에서 1번째 음봉 고가를 표시한다(H) G~H 중심을 표시한다 G~H상방 대칭을 표시한다 G~H하방 대칭을 표시한다 감사합니다
프로필 이미지
회원
2019-05-17
346
글번호 128752
지표