커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6595
글번호 230811
답변완료
수식바랍니다
당일 데이트레이딩입니다
1. rsi가 30을 상향돌파 당일 3회 발생과 동시에 macd오실레이터가 직전봉보다 증가하면 매수진입
rsi가 70을 하향돌파 당일 3회 발생과 동시에 macd오실레이터가 직전봉보다 감소하면 매도진입
2. energy1이 300 돌파하면서 미결제가 직전봉보다 감소 매도진입
energy2가 300 돌파하면서 미결제가 직전봉보다 감소 매수진입
감사합니다
2015-05-11
148
글번호 85890
답변완료
도움 부탁드립니다.
안녕하세요-
저- 아래 절취선(>>>>>) 밑에 전략 2개(거의 같은)가 있습니다.
두개의 전략에 대래 EQUITY 라는 변수로 수익률 그래프를 지표로 구현 부탁드립니다.
바로 밑은 저 혼자서 예전 유사전략을 수익률 그래프로 만들었던 것입니다.
제가 안하려는 것이 아니고..미세한 오차 발생분에 대해 정확한 구현을 도움부탁드리고자 이렇게 올립니다.
혹시 작업중 필요하시면 연락부탁드립니다.
(01054410350)
번거로우시겠지만,
SETSTOPLOSS(C*0.03,POINTSTOP);
등까지도 구현해주시면 감사하겠습니다.
다시 한번 먼저 감사드립니다.
# 유사 전략 수익률그래프
INPUT : init(400),risk(0.08),CAP(100000),f(3);
VAR : PV_ZW(100),POINTV2(100),POINTV3(100),POINTV4(100);
VAR : BET1(0), BET2(0), BET3(0), BET4(0);
VAR : BET_T1(0), BET_T2(0), BET_T3(0), BET_T4(0);
VAR : TRADE(0), T1(0), T2(0), TEMP_L(0), TEMP_H(0), CC(0);
VAR : PST1(0), EP1(0), EX1(0), TR(0), CNT(0);
ARRAY : PROFIT[100](0),ECURVE[100](0),RATE[100](0);
PV_ZW = 50;
BET1 = 1;
IF PST1[2] == 0 AND PST1 <> 0 THEN {
#MessageLog("[PST] %.3f",PST1);
MessageLog("betsize %.3f %.3f %.3f %.3f %.3f %.3f",BET1,(CAP+(ECURVE[0]*PV_ZW))*f/(C[2]*PV_ZW),ECURVE[0]);
}
IF (DATA2(L) <> TEMP_L) AND (DATA2(H) <> TEMP_H) THEN {
T1 = STIME[10];
T2 = STIME + 10000;
TEMP_L = DATA2(L);
TEMP_H = DATA2(H);
}
IF (STIME[1] < T2 AND STIME >= T2) THEN TRADE = 1;
# 수익그래프
IF (STIME[2] < T1 AND STIME[1] >= T1) THEN {
IF PST1 == 1 THEN {
PROFIT[0] = (EP1-O)*BET_T1;
#MessageLog("매수이익1 %.3f %.3f %.3f",O,EP1,PROFIT[0]);
FOR CNT = 1 TO 99 {
PROFIT[CNT] = PROFIT[CNT-1][1];
}
ECURVE[0] = ECURVE[0] + PROFIT[0];
FOR CNT = 1 TO 99 {
ECURVE[CNT] = ECURVE[CNT-1][1];
}
#MessageLog("수익 %.3f",ECURVE[0]);
PST1 = 0;
}
IF PST1 == -1 THEN {
PROFIT[0] = (O-EP1)*BET_T1;
#MessageLog("매도이익1 %.3f %.3f %.3f",O,EP1,PROFIT[0]);
FOR CNT = 1 TO 99{
PROFIT[CNT] = PROFIT[CNT-1][1];
}
ECURVE[0] = ECURVE[0] + PROFIT[0];
for CNT = 1 TO 99{
ECURVE[CNT] = ECURVE[CNT-1][1];
}
#MessageLog("수익 %.3f",ECURVE[0]);
PST1 = 0;
}
TR = 0;
}
# IF SDATE[1] != SDATE[2] THEN TR = 1;
IF (STIME[2] < T2 AND STIME[1] >= T2) THEN TR = 1;
# 진입
IF TR == 1 AND PST1 == PST1[1] AND DATA2(H) <> DATA2(L) THEN {
IF (L[1] <= DATA2(L) AND L[2] > DATA2(L)) OR (L[1] <= DATA2(L) AND TR[2] == 0 AND TR[1] == 1) THEN {
IF O[1] > DATA2(L) THEN {
EX1 = DATA2(L);
} ELSE {
EX1 = O[1];
#MessageLog("매수시점 %.3f %.f %.3f %.3f %.3f %.3f %.3f %.3f",EX1,STIME,DATA2(H),DATA2(L),DATA2(H[1]),DATA2(L[1]),DATA2(H[2]),DATA2(L[2]));
}
IF PST1 == -1 THEN {
PROFIT[0] = (EX1-EP1)*BET_T1;
#MessageLog("매도이익2 %.3f %.3f %.3f",EX1,EP1,PROFIT[0]);
FOR CNT = 1 TO 99{
PROFIT[CNT] = PROFIT[CNT-1][1];
}
ECURVE[0] = ECURVE[0] + PROFIT[0];
for CNT = 1 TO 99{
ECURVE[CNT] = ECURVE[CNT-1][1];
}
#MessageLog("수익 %.3f",ECURVE[0]);
PST1 = 0;
}
IF PST1[1] <> 1 THEN {
PST1 = 1;
EP1 = EX1;
#MessageLog("매수시점 %.3f",EP1);
BET_T1 = BET1;
}
}
IF (H[1] >= DATA2(H) AND H[2] < DATA2(H)) OR (H[1] >= DATA2(H) AND TR[2] == 0 AND TR[1] == 1) THEN {
IF O[1] < DATA2(H) THEN {
EX1 = DATA2(H);
} ELSE {
EX1 = O[1];
}
IF PST1 == 1 THEN {
PROFIT[0] = (EP1-EX1)*BET_T1;
#MessageLog("매수이익2 %.3f %.3f %.3f",EX1,EP1,PROFIT[0]);
FOR CNT = 1 TO 99 {
PROFIT[CNT] = PROFIT[CNT-1][1];
}
ECURVE[0] = ECURVE[0] + PROFIT[0];
FOR CNT = 1 TO 99 {
ECURVE[CNT] = ECURVE[CNT-1][1];
}
#MessageLog("수익 %.3f",ECURVE[0]);
PST1 = 0;
}
IF PST1[1] <> -1 THEN {
PST1 = -1;
EP1 = EX1;
#MessageLog("매도시점 %.3f",EP1);
BET_T1 = BET1;
}
}
}
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# 전략1
VAR : ET(0,DATA1), XT(0,DATA1);
VAR : TR(0,DATA1), BET(1,DATA1);
ET = 140000;
XT = 150000;
ST = 93000;
IF MARKETPOSITION <> 0 AND (DATA2(H)-DATA2(L)) > C*0.005 AND MAXPOSITIONPROFIT < C*0.002 AND STIME[1] < ST AND STIME >= ST THEN {
EXITLONG();
EXITSHORT();
TR = 0;
}
IF STIME[1] < XT AND STIME >= XT THEN {
EXITLONG("매수청산",ATMARKET);
EXITSHORT("매도청산",ATMARKET);
TR = 0;
}
IF STIME[1] < ET AND STIME >= ET THEN {
TR = 1;
}
IF TR == 1 AND DATA2(H) <> DATA2(L) AND MARKETPOSITION == MARKETPOSITION[1] THEN {
BUY("B",ATSTOP,DATA2(H),BET);
SELL("S",ATSTOP,DATA2(L),BET);
}
SETSTOPLOSS(C*0.03,POINTSTOP);
#전략2
VAR : ET(0,DATA1), XT(0,DATA1);
VAR : TR(0,DATA1), BET(1,DATA1);;
ET = 140000;
XT = 150000;
ST = 93000;
IF MARKETPOSITION <> 0 AND (DATA2(H)-DATA2(L)) > C*0.005 AND MAXPOSITIONPROFIT < C*0.002 AND STIME[1] < ST AND STIME >= ST THEN {
SELL("S1",ATSTOP,DATA2(L-C*0.015),BET); # 이 부분이 서로 다릅니다.
TR = 0;
}
IF STIME[1] < XT AND STIME >= XT THEN {
EXITLONG("매수청산",ATMARKET);
TR = 0;
}
IF STIME[1] < ET AND STIME >= ET THEN {
TR = 1;
}
IF TR == 1 AND DATA2(H) <> DATA2(L) AND MARKETPOSITION == MARKETPOSITION[1] THEN {
BUY("B1",ATLIMIT,DATA2(L),BET);
}
2015-05-11
177
글번호 85889
답변완료
문의드립니다.
주가 이동평균선 정배열전환 종목검색을 하면 주봉에서 설정이 500봉까지 되어있었는데
이렇게 설정해서 검색이 됐었는데 갑자기 첨부파일과 같이 메세지가 뜨면서 되지않습니다. 조치방법을 알려주세요
2015-05-11
156
글번호 85888
답변완료
수식문의 드립니다.
일봉을 기준으로 합니다.(국내선물)
매수조건
어제 종가가 5일선 위에서 끝났을 경우
오늘 시가에서 매수한다.
청산조건
1.당일 종가 청산 또는
2.손절매 0.5p
청산(손절매)후 재매수 조건
손절매 이후 가격이 시가를 돌파할 경우
재매수후 청산조건
1.당일 종가 청산 또는
2.손절매 0.5p
*이렇게 한번 또는 두번 매매함(즉, 2번을 초과해서 매매를 하지못함)
매도조건
어제 종가가 5일선 아래에서 끝났을 경우
오늘 시가에서 매도한다.
청산조건
1.당일 종가 청산 또는
2.손절매 0.5p
청산(손절매)후 재매도 조건
손절매 이후 시가를 아래로 돌파할 경우
재매도후 청산조건
1.당일 종가 청산 또는
2.손절매 0.5p
*이렇게 한번또는 두번 매매함(즉, 2번을 초과해서 매매하지 못함)
여기서 당일 종가 청산이라 함은 무조건 포지션을 당일 정리한다는 뜻임
2015-05-11
143
글번호 85887
알리섬 님에 의해서 삭제되었습니다.
2015-05-10
9
글번호 85886
답변완료
문의드립니다.
현재 해외선물을 거래하고 있는데요 두가지 질문이 있습니다.
1.
조건에 금요일 15:00 이후로는 매수 매도 주문이 발생안되게 하고 싶네요,
어떻게 수식을 작성해야 하는지요?
2.
그리고 또한 지금 매수 매도 주문이 나가는 수식이 많은데요 일일히 모든 수식에
위에서 작성한 수식을 대입해야 하는지요? 아니면 서두에 한번 적어서 다 적용되게
하는 방법은 없는지요?
답변 부탁드립니다. 수고하세요
2015-05-10
153
글번호 85885
답변완료
수식
안녕하세요.
이평선 골든데드 크로스에서 ADX 확인 후 신호 발생 부탁드립니다.
1. 매수 +D > = -D
2. 매도 -D > = +D
* 크로스 발생 후 2틱 유리한 가격 진입
* 크로스 발생 후 1틱 유리한 가격 청산
상기 조건을 기본으로 신호 발생 및 진입 후 1) 7봉 이내 신호 무시 2) 30분 이내 신호 무시
이렇게 2가지 수식 부탁드립니다.
감사합니다.
2015-05-10
145
글번호 85884
답변완료
수식 부탁드립니다
항상 감사합니다
전일 저가와고가을 기준으로
1.전저+10% 라인
2.전저+40% 라인
3.전저-20% 라인
4.전고-10% 라인
5.전고-40% 라인
6.전고+20% 라인을 선으로 나타내게 할려고 합니다
그리고
3번과 6번의 진폭 만큼 3번라인에서 아래로 라인
6번라인에서 위로 라인을 만들고 싶습니다
각 라인에 가격이 터치하면 소리가 나게 하고싶습니다
부탁합니다. 감사 합니다..
2015-05-10
172
글번호 85883
답변완료
신호발생시 추가
신호발생시 계약을 추가하고 싶음니다.
예를 들어
양봉발생시 매수 1계약
또 양봉발생시 추가1계약
또 양봉발생시 추가 1계약
음봉발생시 매수 모두청산
매도 1 계약
또 음봉발생시 추가 매도1계약
또 음봉발생시 추가 매도1계약
양봉발생시 매도 모두청산 매수 1계약
시스템 수식 부탁드립니다.
2015-05-10
156
글번호 85882