커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6404
글번호 230811
답변완료
옵션 전가격 일별 추이
옵션 CALL/PUT 전가격대 시고저종 미결수량을 출력하려면 어떻게 하면 되나요 ?
특정일 부터 금일까지 ?
LOG FILE(TEXT 파일)로 저장되도록 ....
2016-08-09
144
글번호 100855
답변완료
고맙습니다
안녕하세요
늘 어려운 수식 짜 주셔서 고맙습니다
10분봉에서 20ma에 종가등 저가등 한번닿고 그 닿은 분봉이 양봉이면
그분봉포함해서 5개 분봉째에 표시되는 지표 부탁드립니다
고맙습니다
2016-08-09
115
글번호 100854
답변완료
안녕하세요,수식과 지표식 다시 부탁드립다
안녕하세요
어제 주신 답변에 감사드리면서
다시 질문 드립니다
1)
9시 장이 시작되면
Macd Osc의 수식으로 거래합니다
이후
시초가에서 2포인트가 상슬돌파하거나
시초가에서 2포인트가 하락이탈하면
Golden_Dead Cross 의 수식으로 거래 하려고 합니다
매매수식을 부탁드립니다
2)
아래 지표식을
var : mav(0);
mav = ma(C,5);
if stime == 93000 or (stime > 93000 and stime[1] < 93000) Then{
var1 = mav;
}
plot1(var1*1.01);
plot2(var1*0.99);
9시 30분부터 시작하여 12시 30분 까지만 표현되도록
수정하여 주십시요
감사합니다
수고하세요
2016-08-09
128
글번호 100849
답변완료
문의
안녕하세요
외국인선물매수금액이300억을넘어가면 매수진입
매도는반대로 진입수식부탁합니다 감사합니다
2016-08-09
106
글번호 100845
답변완료
문의드립니다.
선물차트 기준으로 문의드립니다.
1. True Strength Index(이하 TSI지표)지표가 0선을 기준으로 0선위에서 2개이상 유지되다가
0선 아래에 막대가 하나 발생할때를 검색하고 싶습니다. 검색신호는 TSI보조지표 위에 있는
기본차트의 캔들의 위에 파란점으로 표시되게 하고 싶습니다.
2. 위 1과 반대로 TSI지표가 0선 아래에서 막대가 2개이상 유지되다가 0선 위로 막대가 1개
발생할때 해당 캔들의 아래에 빨강점으로 검색되게 하고 싶습니다.
수식을 어떻게 작성해야 하는지요? 부탁드립니다. 감사합니다.
2016-08-09
130
글번호 100844
답변완료
청산 수식 수정 부탁 드립니다.
부탁 드립니다.
진입시 이전 5봉중 최저가를 손절가격으로 잡는 수식입니다.
if 조건식 Then
{ buy("buy1");
cut = lowest(L,5); }
if isentryname ("buy1")==true Then
{
if c < cut Then
exitlong("buy1손절");
}
그림에서와 같이 진입시 5개봉 중 저가가 아니고 현재봉 기준으로 손절이 잡힙니다.
현재 식이 어디가 잘못되었는지 부탁드리며 수정 부탁 드립니다.
2016-08-08
138
글번호 100843
답변완료
부탁드립니다.
49025의
질문1)의 답변수식과 관련
실행결과 이상하여
아래와 같이 수정 한 것이 맞는지요?
미리 감사 드립니다.
var : T1(0),T2(0),T3(0),T4(0);
var : Bcond(false,data1),Scond(false,data1);
//답변수식-> var : val1(0,data2),V11(0,data2),V12(0,data2),V13(0,data2),V14(0,data2);
//수정식
var : val1(0,data1),V11(0,data1),V12(0,data1),V13(0,data1),V14(0,data1);
//답변수식-> var : T11(0,data2),T12(0,data2),T13(0,data2),T14(0,data2);
//수정식
var : T11(0,data1),T12(0,data1),T13(0,data1),T14(0,data1);
var : val2(0,data2),V21(0,data2),V22(0,data2),V23(0,data2),V24(0,data2);
var : T21(0,data2),T22(0,data2),T23(0,data2),T24(0,data2);
val1= data1(ma(c,20));
v11 = data1(ma(Val2,1));
v12 = data1(ma(Val2,2));
v13 = data1(ma(Val2,3));
v14 = data1(ma(Val2,4));
if v11 > v11[1] then
T11 = 1;
else
T11 = -1;
if v12 > v12[1] then
T12 = 1;
Else
T12 = -1;
if v13 > v13[1] then
T13 = 1;
else
T13 = -1;
if v14 > v14[1] then
T14 = 1;
else
T14 = -1;
val2= data2(ma(c,20));
v21 = data2(ma(Val2,1));
v22 = data2(ma(Val2,2));
v23 = data2(ma(Val2,3));
v24 = data2(ma(Val2,4));
if v21 > v21[1] then
T21 = 1;
else
T21 = -1;
if v22 > v22[1] then
T22 = 1;
Else
T22 = -1;
if v23 > v23[1] then
T23 = 1;
else
T23 = -1;
if v24 > v24[1] then
T24 = 1;
else
T24 = -1;
Bcond = T11 == 1 and T12 == 1 and T23 == 1 and T24 == 1 ;
Scond = T11 == -1 and T12 == -1 and T23 == -1 and T24 == -1 ;
if Bcond == true and Bcond[1] == false Then
buy();
if Scond == true and Scond[1] == false Then
sell();
2016-08-08
116
글번호 100842
답변완료
수식 수정 부탁합니다.
알려주신 수식대로 적용해서 해봤는데 이상하게 나오네요.
조건이 만족된 사진의 1번과 2번캔들에서 지정한 가격에 주문이 나가게 하려고요.
뭐를 잘못 한걸까요?
1.
atlimit 주문을 썻는데도 조건만족 즉시 신호가 나가지않고 다음봉, 혹은 서너봉 후에
주문이 나갑니다.
2.
체결된 가격이 지정가와 다릅니다. 사진처럼 엉뚱한 캔들의 시가에서 주문이 나가네요.
==========================================================
input : p1(5),P2(60),p3(120),금액(1000000);
var : a1(0),a2(0),a3(0),dncnt(0);
a1=ma(c,p1);
a2=ma(c,p2);
a3=ma(c,p3);
#==== 60선과 120선이 골든나면 고가와 저가를 기준====#
if crossup(a2,a3) then {
Value1 = h;
Value2 = L;
}
#===채널을 하향돌파한적이 있는지 체크===#
if CrossUp(c,Value1) Then
dncnt = 0;
if CrossDown(c,Value2) Then
dncnt = dncnt+1;
#========주문식==============#
#==== 전일종가가 상단보다 크고, 현재가격이 상단과 같거나 작아지면 즉시 상단가격에 금액만큼 신규매수주문=== #
If c[1] > Value1 and Low <= Value1 Then
buy("b1",AtLimit,Value1,floor(금액/C));
#==== 종가가 채널을 하향돌파한적이 없고, 현재가격이 채널하단에 닿으면 즉시 하단가격에 추가매수주문 ====#
If dncnt == 0 and Low <= Value2 Then
buy("b2",AtLimit,Value2,floor(금액/C));
#==== 현재 매수잔량이 있으면, 하단가격에서 채널두깨만큼 뺀가격에 추가매수주문 ====#
If MarketPosition == 1 and dncnt >= 1 Then
buy("b3",AtLimit,value2 - (Value1-Value2),floor(금액/C));
#==== 매수잔량이있고, 종가가 채널을 하방이탈한 상태이니, 평균단가에서 청산해라 ====#
if MarketPosition == 1 and dncnt >= 1 Then
ExitLong("BP",AtLimit,AvgEntryPrice);
======================================================================================
2016-08-08
160
글번호 100841
aaace 님에 의해서 삭제되었습니다.
2016-08-08
2
글번호 100839