커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
2548
글번호 230811
답변완료
시스템식 하나 부탁드립니다
left(3),right(3) swing사용
1)marketposition 0 에서
swin1glow가 발생하면 그 Low값(왼쪽3봉전 값이 되겠죠)을 저장(b1)하고,
이후 가격이 b1값 아래로 1틱이상 내려갔다 2틱 반등하면 매수,
매수이후 전고점(h1:매수전당일최고값)의 90%이상 도달후 1틱이상 상승하고 2틱하락시.청산
2)청산후 무포이면
1)번 반복실행 또는 전고점(h2:2차매수전 swinghigh값)과 b1값을 더한값의 60%((h2+b1)*0.6) 이하로 1틱 이상하락후 2틱반등하면 2차매수(b2)
2차매수는 stoptrailind(10,30,percentstop,1);
논리 않맞는 부분 있더라도 의도는 아시리라 봅니다.의도에 맞으면 정확하지 않은 식
이라도 작성 부탁드립니다. 미리 감사.
2022-10-14
1181
글번호 162983
답변완료
문의드립니다
나스닥 100 선물에서
오후 4시정각에서 4시5분의 5분봉이
양봉이면 매수하고
음봉이면 매도하여
오후 5시25분 정각에 청산하시오
시스템식 부탁드립니다
감사합니다
2022-10-14
1239
글번호 162977
답변완료
수식문의
안녕하세요.
지난 일정 기간의 일봉의 고가, 저가, 시가, 중심가 (고가+저가/2)를 선으로 나타내서 틱차트나 분차트에서 볼 수 있는 수식(기간 설정 가능하고 위 선들을 선택 할 수 있게)이 가능할까요? 지난 선 때문에 차트가 작아지지 않고 현재 차트에만 나타나면 좋겠구요.
예를 들어 지난 2일 (어제, 그제)의 일봉의 고저시중 선이 틱이나 분차트에서 자동으로 그려지게 한다는 뜻입니다.
감사합니다.
2022-10-14
1200
글번호 162976
답변완료
수식확인 수정
input : P(10),Nbar(10),T(10);
var : mav(0);
mav = ma(C,P);
if C > O and CrossUp(C,mav) and CountIf(C<=mav-PriceScale*T,Nbar)[1] >= 1 Then
Buy();
if C < O and CrossDown(C,mav) and CountIf(C>=mav+PriceScale*T,Nbar)[1] >= 1 Then
Sell();
수식수정
macd 추가해 주세요
그리고 청산후 2초 대기후 매수는 청산가격보다 +가격시 현재가 진입
매도는 청산가겨보다 _ 가격시 현재가 진입
2022-10-26
1126
글번호 162975
답변완료
문의드립니다.
안녕하세요.
A 전략:
매수: 해외선물 일봉에서 음봉 다음에 양봉이 2개 연속일 때
대양봉이라고 하고 최초양봉과 2번쩨 양봉중에서 최저가를
대양봉 시가 최고가를 대양봉 종가라고
(대양봉 시가 + 대양봉 종가)/2 = 대양봉 중심가 = 매수 손절가A
라고 정의합니다.
진입 : 무포지션애서 해외선물 일봉에서 음봉 다음에 양봉이 2개 연속일 때
그 다음날 일봉 시가에 매수진입합니다.
매수 손절과 매도 진입 : 매수후 매수 손절가A 에 닿으면 손절과 동시에
매도 진입합니다. 매도후에 다시 상승하여 일봉 시가가 되면 재매수진입합니다.
매도 : 반대논리로 부탁드립니다.
B전략:
매수: 해외선물 일봉에서 가장 최근의 음봉들을 관찰하고 최근의 음봉이 2개 연속일 때
대음봉이라고 하고 최초음봉과 2번쩨 음봉중에서 최저가를
대음봉 시가 최고가를 대양봉 종가라고
(대음봉 시가 + 대음봉 종가)/2 = 대음봉 중심가 = 매수 기준가A
라고 정의합니다.
진입 : 무포지션애서 해외선물 분봉에서 분봉 종가가 매수 기준가A.상방에
있으면 매수진입합니다.
매수 손절 : 매수후 분봉 종가가 일봉의 시가 아래로 하방하면 손절합니다.
매도 : 반대논리로 부탁드립니다.
2022-10-14
1069
글번호 162974
회원 님에 의해서 삭제되었습니다.
2022-10-14
47
글번호 162961
답변완료
수식 변경
수고하십니다
현재등가의표시를 등가가 변경된면 변경된 등가에 표시되는 수식을 변경해서 부탁드립니다
var : V1(0,Data1),V2(0,Data1),ATM(0,Data1);
var : cnt(0,Data1);
var : Ci(0,Data1),Pi(0,Data1);
Array : CS[7](0),CC[7](0),PS[7](0),PP[7](0);
#콜종가
CC[2] = Data2(c);
CC[3] = Data4(c);
CC[4] = Data5(c);
CC[5] = Data6(c);
CC[6] = Data7(c);
#풋가격
PP[2] = Data3(c);
PP[3] = Data8(c);
PP[4] = Data9(c);
PP[5] = Data10(c);
PP[6] = Data11(c);
if data1(Bdate != Bdate[1]) then
{
V1 = Data12(c);
V2 = data12(Floor(c/2.5)*2.5);
if V1-V2 > 2.5/2 Then
ATM = V2+2.5;
else
ATM = V2;
#콜행사가
CS[2]= data2(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
CS[3]= data4(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
CS[4]= data5(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
CS[5]= data6(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
CS[6]= data7(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
#풋행사가
PS[2]= data3(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
PS[3]= data8(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
PS[4]= data9(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
PS[5]= data10(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
PS[6]= data11(iff(StrToNum(RightStr(SymbolCode,1)) == 5 or StrToNum(RightStr(SymbolCode,1)) == 0, StrToNum(RightStr(SymbolCode,3)), StrToNum(RightStr(SymbolCode,3))+0.5));
var1 = 0;
Var2 = 0;
Var3 = 0;
For cnt = 2 to 6
{
if CS[cnt] == ATM Then
var1 = cnt;
if CS[cnt] == ATM+2.5 Then
Var2 = cnt;
if CS[cnt] == ATM-2.5 Then
Var3 = cnt;
if PS[cnt] == ATM Then
value1 = cnt;
if PS[cnt] == ATM+2.5 Then
Value2 = cnt;
if PS[cnt] == ATM-2.5 Then
Value3 = cnt;
}
}
if var1 > 0 Then
Plot1(CC[var1]);
if Var2 > 0 Then
Plot2(CC[Var2]);
if Var3 > 0 Then
Plot3(CC[Var3]);
if value1 > 0 then
plot4(PP[value1]);
if value2 > 0 then
plot5(PP[value2]);
if value3 > 0 then
plot6(PP[value3])
2022-10-14
1070
글번호 162957
답변완료
시초가 청산
안녕하세요 개발자님 해당 수식이 시초가 청산이 되지 않아 질문드립니다.
If MarketPosition == 1 and NextBarSdate!=sDate Then
ExitLong("매수청산",AtMarket);
저번 답변 주신 내용으로는 이 수식이 시초가 청산이 된다고 하셨는데, 작동이 안되더라구요.. 혹시 문제가 어떻게 될까요? 매수 포지션인 상태였고 실시간 자동매매 적용 상태였습니다.
항상 도움주셔서 감사합니다.
2022-10-14
1042
글번호 162956
답변완료
문의 드립니다
시스템신호발생 창이뜨는데 설정에 문제가 있는건지
무시해도 상관없는지요 ?
2022-10-14
1063
글번호 162955