커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식작성문의

안녕하세요 옵션이 장중에 시초가보다 0.25 상승시 매수 0.50상승시 또매수 이렇게 계속 매수하고 장중에 시초가 보다 0.25 하락시 매도 0.50 하락시 또매도 이렇게 하루에 누적으로 15개 까지 매수/매도 하는 수식 부탁드립니다
프로필 이미지
중국동포
2018-04-03
136
글번호 117904
시스템

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

프로필 이미지
Dopdop
2018-04-03
5
글번호 117900
시스템
답변완료

종목 검색식 부탁드립니다.

DMI지표식으로 다음과 같은 종목검색식 부탁드립니다. 1) PDI>MDI 2) ADX: 20이상에서 우상향 3) DMI: 30 이상에서 하락하다가 상승반전 미리 감사드립니다.
프로필 이미지
pareter
2018-04-03
275
글번호 117897
종목검색
답변완료

문의드립니다.

매번 감사합니다. 1. 기타 코딩 변환 부탁드립니다. 쓰기금지어 인서트는 한글로 바꿨습니다. inputs: OverNightStartTime( 0 ), OverNightEndTime( 830 ), BreakoutStartTime( 830 ), BreakoutEndTime( 930 ), NoEntriesAfterTime( 1400 ), VolumeAvgLength( 5 ), VolRatioUP( 1 ) ; variables: double OverNightTotalVolume( 0 ), double OverNightVolumeAverage( 0 ), double FirstHourHigh( 0 ), double FirstHourLow( 0 ), bool OverNightVolTime( false ), bool BreakoutRangeTime( false ), vector OverNightVolume( null ) ; ; once begin OverNightVolume = new vector ; end ; OverNightVolTime = ( OverNightStartTime < OverNightEndTime and Time >= OverNightStartTime and Time <= OverNightEndTime ) or ( OverNightStartTime > OverNightEndTime and ( Time >= OverNightStartTime or Time <= OverNightEndTime ) ) ; if not OverNightVolTime[1] and OverNightVolTime then begin OverNightTotalVolume = ticks ; end else if OverNightVolTime then begin OverNightTotalVolume += ticks ; end ; if Time[1] < OverNightEndTime and Time >= OverNightEndTime and BarStatus( DataNum + 1 ) = 2 then begin if OverNightVolume.Count >= VolumeAvgLength then OverNightVolumeAverage = Average( OverNightVolume, VolumeAvgLength ) * VolRatioUP ; OverNightVolume.인설트( 0, OverNightTotalVolume astype double ) ; end ; BreakoutRangeTime = Time >= BreakoutStartTime and Time <= BreakoutEndTime ; if not BreakoutRangeTime[1] and BreakoutRangeTime then begin FirstHourHigh = High ; FirstHourLow = Low ; end else if BreakoutRangeTime then begin FirstHourHigh = MaxList( High, FirstHourHigh ) ; FirstHourLow = MinList( Low, FirstHourLow ) ; end ; if OverNightTotalVolume > OverNightVolumeAverage and Time >= BreakOutEndTime and Time<= NoEntriesAfterTime and MarketPosition = 0 then begin Buy next bar at FirstHourHigh Stop ; SellShort next bar at FirstHourLow Stop ; end ; SetExitOnClose ; Indicator: Cumulative Overnight Volume // Cumulative Volume Indicator // TASC JUN 2017 // Daytrading With Night Volume // Domenico D’Errico using elsystem ; using elsystem.collections ; inputs: OverNightStartTime( 0 ), OverNightEndTime( 830 ), VolumeAvgLength( 5 ), VolRatioUP( 1 ) ; variables: double OverNightTotalVolume( 0 ), double OverNightVolumeAverage( 0 ), double FirstHourHigh( 0 ), double FirstHourLow( 0 ), bool OverNightVolTime( false ), bool BreakoutRangeTime( false ), vector OverNightVolume( null ) ; ; once begin OverNightVolume = new vector ; end ; OverNightVolTime = ( OverNightStartTime < OverNightEndTime and Time >= OverNightStartTime and Time <= OverNightEndTime ) or ( OverNightStartTime > OverNightEndTime and ( Time >= OverNightStartTime or Time <= OverNightEndTime ) ) ; if not OverNightVolTime[1] and OverNightVolTime then begin OverNightTotalVolume = ticks ; end else if OverNightVolTime then begin OverNightTotalVolume += ticks ; end ; if Time[1] < OverNightEndTime and Time >= OverNightEndTime and BarStatus( DataNum + 1 ) = 2 then begin if OverNightVolume.Count >= VolumeAvgLength then OverNightVolumeAverage = Average( OverNightVolume, VolumeAvgLength ) * VolRatioUP ; OverNightVolume.인서트( 0, OverNightTotalVolume astype double ) ; end ; if OverNightVolTime then Plot1( OverNightTotalVolume ) ; if OverNightTotalVolume > OverNightVolumeAverage then SetPlotColor( 1 , Yellow ) ; Plot2( OverNightVolumeAverage ) ;
프로필 이미지
잡다백수
2018-04-03
327
글번호 117895
시스템
답변완료

수식 문의합니다

안녕하세요 종목검색 수식 문의합니다 주봉캔들 기준 양봉 캔들의 종가가 11일이평선을 상승 돌파 하고, 20일 거래량 이동평균 대비 거래량이 150% 변동률이 발생하고, 7일-9일-13일 이평선이 정배열이고, 위 조건을 만족하는 날이 현재봉 기준 4일전 봉내에서 1회이상 있었으며, 현재가가 7일 이평값 이하 일때 만족하는 종목을 검색하고 싶습니다 수고하세요
프로필 이미지
정상에서야
2018-04-03
285
글번호 117894
종목검색
답변완료

수식부탁드립니다

아래 파동선에서 고점과 고점, 저점과 저점을 연결하는 추세선을 넣고 싶습니다. 그리고 가능하다면 최대 3개까지 지난 추세선을 Plot으로 표시하고싶습니다. 항상 감사합니다 Var : length(0); length= 24; Var : j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0); var : TL1(0),TL2(0),T(0),Text1(0),처리구분(""); Array:고점[10,2](0),저점[10,2](0); //가격,위치 처리구분 = ""; If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then { If 저점[1,1] > L Then 처리구분 = "저점처리"; If 고점[1,1] < H Then 처리구분 = "고점처리"; } Else If Highest(H,length) == H and lastHiVal <> H Then 처리구분 = "고점처리"; Else If Lowest(L,length) == L and lastLoVal <> L Then 처리구분 = "저점처리"; If 처리구분 == "고점처리" Then { lastHiVal = H; If 고점[1,2] < 저점[1,2] Then { For j = 10 DownTo 2 { 고점[j,1] = 고점[j-1,1]; 고점[j,2] = 고점[j-1,2]; } } If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then { 고점[1,1] = H; 고점[1,2] = Index; sBar = Index - 저점[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); TL_Delete(TL2); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],sDate[eBar],sTime[eBar],고점[1,1]); Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],NumToStr(고점[1,1],2)); Text_SetStyle(Text1, 0, 0); } } If 처리구분 == "저점처리" Then { lastLoVal = L; If 저점[1,2] < 고점[1,2] then { For j = 10 DownTo 2 { 저점[j,1] = 저점[j-1,1]; 저점[j,2] = 저점[j-1,2]; } } If 저점[1,2] < 고점[1,2] or 저점[1,1] > L then { 저점[1,1] = L; 저점[1,2] = Index; sBar = Index - 고점[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); TL_Delete(TL2); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],sDate[eBar],sTime[eBar],저점[1,1]); Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],NumToStr(저점[1,1],2)); Text_SetStyle(Text1, 2, 0);#(Text1, 2, 0); } } if 처리구분 == "고점처리" Then TL_SetColor(TL1,RED); if 처리구분 == "저점처리" Then TL_SetColor(TL1,blue); TL_SetSize(TL1,3); If 처리구분 == "고점처리" Then T = 1; If 처리구분 == "저점처리" Then T = -1; //////////////////////////////////////////////////////////////////////////////////////
프로필 이미지
까시서방
2018-04-03
273
글번호 117890
지표
답변완료

수식 문의합니다

안녕하세요 시스템 신호 수식 문의합니다 주봉캔들 기준 양봉 캔들의 종가가 11일이평선을 상승 돌파 하고, 20일 거래량 이동평균 대비 거래량이 150% 변동률이 발생하고, 7일-9일-13일 이평선이 정배열이, 위 조건을 만족하는 날이 현재봉 기준 4일전 봉내에서 1회이상 있었으면 7일 이평값에서 30% 매수 9일 이평값에서 30% 매수 11일 이평값에서 40% 매수 청산주문 1차....10% 수익시....50% 청산 2차....20% 수익시....30% 청산 3차....30% 수익시... 20% 청산 단, 상승돌파 캔들 다음 봉부터 4번째 봉까지만 매수진입을 허용하고, 5번째 봉부터는 정배열이라 할지라도 진입하지 않는다. 재 진입은 위 조건들을 다시 만족하면 허용한다 수고하세요
프로필 이미지
정상에서야
2018-04-03
306
글번호 117887
시스템
답변완료

지표 변환 문의 드립니다

아래는 Meta Trader 4라는 프로그램의 지표인데요 예스스탁 사용자 지표로의 변환이 가능할런지요? #property indicator_separate_window #property indicator_buffers 4 #property indicator_color1 Aqua #property indicator_color2 Red #property indicator_color3 Red #property indicator_color4 Yellow #property indicator_levelcolor SlateGray #property indicator_level1 0 #property indicator_level2 0 //---- extern int period=9; extern int shift=0; extern int method=0; extern int price=0; extern double deviation=1.5; //---- buffers double ExtMapBuffer1[]; double ExtMapBuffer2[]; double ExtMapBuffer3[]; double ExtMapBuffer4[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1,ExtMapBuffer2); SetIndexStyle(2,DRAW_LINE); SetIndexBuffer(2,ExtMapBuffer3); SetIndexStyle(3,DRAW_LINE); SetIndexBuffer(3,ExtMapBuffer4); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int limit, counted_bars=IndicatorCounted(); double ima, std; if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; limit=Bars-counted_bars; for(int i=0; i<limit; i++) { ima=iMA(NULL,0,period,shift,method,price,i); std=deviation*iStdDev(NULL,0,period,shift,method,price,i); ExtMapBuffer1[i]=0; ExtMapBuffer2[i]=std; ExtMapBuffer3[i]=-std; ExtMapBuffer4[i]=Close[i]-ima; } //---- return(0); } //+------------------------------------------------------------------+
프로필 이미지
굿잡맨
2018-04-03
320
글번호 117883
지표
답변완료

변수조절

아래 수식에 대해 진입가격 제한 수식과 거래횟수 조절 수식을 추가해주시고 input에 반영해주십시요 input : 최대(320), 최소(300),거래횟수(1) - 진입시 320 초과 진입중지 - 진입시 300 미만 진입중지 - 거래횟수 조절 항상 고맙습니다. *************************************************************** input: 진입(092700); if date != date[1] then { var1 = 0; var2 = 0; } #장시작후 9시 27분 까지 if stime < 진입 then { #양봉갯수 if C > O then var1 = var1 + 1; #음봉갯수 if C < O then var2 = var2 + 1; } #9시27분봉에 양봉갯수가 음봉갯수보다 많으면 매수 if (stime >= 진입 and stime[1] < 진입) and var1 > var2 then buy(); #9시27분봉에 음봉갯수가 영봉갯수보다 많으면 매도 if (stime >= 진입 and stime[1] < 진입) and var1 < var2 then sell();
프로필 이미지
목마와숙녀
2018-04-03
279
글번호 117881
시스템