커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수정부탁드립니다.

아래의 지표식은 OnClose일때의 수식인데요.. 이걸 AtMarket일때의 수식으로 바꿔주세요. 감사합니다. #################################################### Input : 수량(1),봉갯수(10); Var : MP(0),BuySellEntryPrice(0),OpenPP(0),NP(0); var : Hst(0),Lst(0),idx(-1); Hst = Highest(H,봉갯수); Lst = Lowest(L,봉갯수); If MP == 1 Then{ OpenPP = (C-BuySellEntryPrice); } If MP == -1 Then { OpenPP = (BuySellEntryPrice-C); } If MP == 0 Then { OpenPP = 0; } #MP가 0일때 매수조건 만족 If MP == 0 and Hst[1] < H and index > idx Then{ idx = index; BuySellEntryPrice = C; MP = 1; } #MP가 -1일때 매수조건 만족(리버스) If MP < 0 and Hst[1] < H and index > idx Then{ idx = index; if MP == -1 Then{ NP = NP+OpenPP; } BuySellEntryPrice = C; MP = 1; } #MP가 -1일때 매도청산조건 만족 If MP < 0 and Hst[1] < H and index > idx Then{ idx = index; NP = NP+OpenPP; MP = 0; } #MP가 0일때 매도조건 만족 If MP == 0 and Lst[1] > L and index > idx Then{ idx = index; BuySellEntryPrice = C; MP = -1; } #MP가 1일때 매도조건 만족(리버스) If MP > 0 and Lst[1] > L and index > idx Then{ idx = index; if MP == 1 Then{ NP = NP+OpenPP; } BuySellEntryPrice = C; MP = -1; } #MP가 1일때 매수청산조건 만족 If MP > 0 and Lst[1] > L and index > idx Then{ idx = index; NP = NP+OpenPP; MP = 0; } MessageLog("시가,%.4f,종가,%.4f,MP,%.0f,NP,%.4f,OpenPP,%.4f",open,close,MP,NP,OpenPP); ################################################### Input: 봉갯수(10); If MarketPosition == 0 Then{ If Highest(H,봉갯수)[1] < H Then { Buy("매수",AtMarket); // Buy(); } If Lowest(L,봉갯수)[1] > L Then { Sell("매도",AtMarket); // Sell(); } } If MarketPosition > 0 Then{ If Lowest(L,봉갯수)[1] > L Then Sell("매도전환",AtMarket); // Sell(); } If MarketPosition < 0 Then { If Highest(H,봉갯수)[1] < H Then Buy("매수전환",AtMarket); // Buy(); }
프로필 이미지
9단
2015-06-20
175
글번호 87440
지표
답변완료

문의드립니다.

아래는 답변받은수식입니다. Input : Period1(5),Period2(10); value1 = ma(C,Period1); value2 = ma(C,Period2); value1 과 value2 의 차이를 구합니다. 그래서 두개의 선이 넓어지다가 두개선 이격이 좁아지 시점부터 봉개수를 세고 싶습니다. 아울러 크로스되었다가 다시 줄어드는 시점부터 봉개수가 다시 계산되도록 부탁드립니다.
프로필 이미지
에리조나
2015-06-22
173
글번호 87439
지표

에리조나 님에 의해서 삭제되었습니다.

프로필 이미지
에리조나
2015-06-20
0
글번호 87438
지표

외환달러 님에 의해서 삭제되었습니다.

프로필 이미지
외환달러
2015-06-20
7
글번호 87437
지표
답변완료

복합장에서 당일/전일 시고저종 .피봇계산식 진입회수 봉개수 ;초기화 등등

오전9시시초가+전일변동폭/3 돌파하면 매수진입하고 1500에강제청산하는 데이시스템을 1500대신 0200 에 강제청산하고 야간장에서도 신규진입,청산,리버설진입 등신호가발생되게 변경하여 복합장에서 사용할려고합니다 주간장 시스템 내용들입니다 복합장에 적용할수잇도록변경부탁합니다 If Date<>Date[1] then begin bongIndex=0; var2=c; End; 전일변동폭계산 VAR1=highD(1)-lowD(1); 진입회수 봉개수 제어 EntriesToday<1 and DayIndex>0 시고저종 표기 OpenD(0),HighD(1),LowD(1),CloseD(1) 피봇계산식 Pivot = (DayHigh(1)+DayLow(1)+DayClose(1))/3; R1 = 2*Pivot-DayLow(1); R2 = Pivot+DayHigh(1)-DayLow(1); S1 = 2*Pivot-DayHigh(1); S2 = Pivot-DayHigh(1)+DayLow(1); 참고로 중국상품선물이고,0900장시작-새벽2시장마감 ,OPEND(0) 저녁12시시초가, DAYOPEN(0) 저녁9시시초가를 표기하네요 야간장 2100시초가 -다음날 1500 종가로해서 일봉상 차트가 한개씩 그려집니다 2100 봉을 첫봉으로 바야하나요 ? 주간장시스템에서 0900 봉으로 ?? If Date<>Date[1] then 를 if stime == 210000 or (stime > 210000 and stime[1] < 210000) Then 로 변경해야하나요 ?? 잘 부탁합니다
프로필 이미지
CSI300
2015-06-20
256
글번호 87436
시스템
답변완료

시스템문의입니다.

5분봉 종가에서 위 or 아래 0.5 진입 익절 0.5 손절 0.5 당일청산 하고싶습니다.
프로필 이미지
마이웨2
2015-06-19
195
글번호 87435
시스템
답변완료

시스템 문의

답변 감사합니다. 다른 지표들도 시스템화 부탁드려요 1. 주가가 Bdn3 = 이평 - 4.236*ATR_value일 때 매수 주가가 Bup3 = 이평 + 4.236*ATR_value일 때 매도 input: Period(20); input: ATR_Period(20); var: 이평(0),ATR_value(0); var: Bup1(0),Bup2(0),Bup3(0),Bdn1(0),Bdn2(0),Bdn3(0); 이평 = ma(C,period); ATR_value = ATR(ATR_Period); Bup1 = 이평 + 1.613*ATR_value; Bup2 = 이평 + 2.618*ATR_value; Bup3 = 이평 + 4.236*ATR_value; Bdn1 = 이평 - 1.613*ATR_value; Bdn2 = 이평 - 2.618*ATR_value; Bdn3 = 이평 - 4.236*ATR_value; plot1(이평,"중심선"); plot2(Bup1,"상단1"); plot3(Bup2,"상단2"); plot4(Bup3,"상단3"); plot5(Bdn1,"하단1"); plot6(Bdn2,"하단2"); plot7(Bdn3,"하단3"); 2. Smoothed Moving Average 주가가 SMMA를 골든크로스할 때 매수 주가가 SMMA를 데드크로스할 때 매도 input : period(20); var : SUM(0), SMMA(0); if index <= period-1 then { SUM = accumN(C, period); SMMA = SUM/period; } Else { SUM = (SUM-SMMA+C); SMMA = SUM/period; } plot1(SMMA); 3. 주가가 주가가 Bdn3 = 이평 - 4.236*ATR_value일 때 매수 주가가 SMMA를 골든크로스할 때 매수 청산 주가가 Bup3 = 이평 + 4.236*ATR_value일 때 매도 주가가 SMMA를 데드크로스할 때 매도 청산
프로필 이미지
브런치
2015-06-19
205
글번호 87433
시스템
답변완료

문의드립니다

1틱 차트에서 1분봉차트의 5봉 거래량 이동평균선을 나타내고 싶습니다
프로필 이미지
파인애플
2015-06-19
181
글번호 87424
지표
답변완료

문의 드립니다.

1. 해당 지표를 시스템화 해주세요. (fast metro > slow metro 일 때 매수, fast metro < slow metro 일 때 매도) input: PeriodRSI(14); // Indicator period input: StepSizeFast(5); // Fast step input: StepSizeSlow(15); // Slow step var: fmin(9999),fmax(-9999); var: smin(9999),smax(-9999); var: ftrend(1),strend(1); var: RSI0(0); //---- restore values of the variables RSI0=RSI(PeriodRSI); fmax=RSI0+2*StepSizeFast; fmin=RSI0-2*StepSizeFast; if(RSI0>fmax[1]) then ftrend=1; if(RSI0<fmin[1]) then ftrend=-1; if(ftrend>0 && fmin<fmin[1]) then fmin=fmin[1]; if(ftrend<0 && fmax>fmax[1]) then fmax=fmax[1]; smax=RSI0+2*StepSizeSlow; smin=RSI0-2*StepSizeSlow; if(RSI0>smax[1]) then strend=1; if(RSI0<smin[1]) then strend=-1; if(strend>0 && smin<smin[1]) then smin=smin[1]; if(strend<0 && smax>smax[1]) then smax=smax[1]; if(ftrend>0) then var3=fmin+StepSizeFast; if(ftrend<0) then var3=fmax-StepSizeFast; if(strend>0) then var4=smin+StepSizeSlow; if(strend<0) then var4=smax-StepSizeSlow; 감사합니다.
프로필 이미지
브런치
2015-06-19
200
글번호 87423
시스템