커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7391
글번호 230811
답변완료
타주기 시스템 변환
항상 감사드립니다
아래 시스템은 현재 사용중인 시스템입니다
매수,매도조건은 타주기 챠트에서 정상적으로 시스템신호가 발생하고 있습니다
그러나..다른조건들 때문에 시스템 신호가 발생하지 않습니다.
아래시스템식을 주챠트및 타주기챠트에에 사용할수 있도록 변환 부탁드립니다
(주챠트:200틱, 타주기 :20틱)
#########################
##### 당일익절 설정 #####
#########################
input : 당일수익틱수(50),당일손실틱수(45);
var : NP(0),PreNP(0),dayPL(0),DollerToTick(0),당일수익(0),당일손실(0);
NP = NetProfit;
당일수익 = PriceScale*당일수익틱수;
당일손실 = PriceScale*당일손실틱수;
if stime == 170000 or (stime > 170000 and stime[1] < 170000) then
PreNP = NP[1];
#당일 손익(포인트)
DayPL = NetProfit-PreNP ;
### 동일방향 재진입금지/전일 마지막신호와 무관하게 진입 ###
### 2회연속손실시 시스템 신호발생 금지 ###
### 시초가 갭발생시(20틱이상) 첫번재신호 발생금지 ###
var : entrycnt(0),cond(false),T(0),count(0),gap(false),Xcond(false);
#장시작
if stime == 170000 or (stime > 170000 and stime[1] < 170000) Then{ # 현지시간_뉴욕 17:00 장시작 #
Entrycnt = 0;
cond = false;
Xcond = false;
#매수매도 방향을 알기위한 변수 초기값은 0
T = 0;
#조건만족횟수 카운트 초기화 0
count = 0;
#시가가 전봉종가(전일종가)보다 20틱이상 크거나 20틱이상 낮으면
#gap은 true 아니면 false
if O >= C[1]+PriceScale*20 or O <= C[1]-PriceScale*20 Then
gap = true;
Else
gap = false;
}
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
Entrycnt = Entrycnt+1;
if TotalTrades > TotalTrades[1] and (IsExitName("BP",1) or IsExitName("BL",1) or IsExitName("SP",1) or IsExitName("SL",1)) Then
Xcond = true;
cond = false;
if entrycnt >= 2 Then{
if MarketPosition == 0 and PositionProfit(1) < 0 and PositionProfit(2) < 0 Then
cond = true;
if MarketPosition != 0 and PositionProfit(0) < 0 and PositionProfit(1) < 0 Then
cond = true;
}
if (stime > 170000 or stime < 143000) and (DayPL < 당일수익틱수*PriceScale and dayPL > -당일손실틱수*PriceScale and Xcond == false ) Then{
# 현지시간_뉴욕 17:00 장시작~익일 14:30 장종료 #
##############################
##### 1_ Rsi 매매식 #####
##############################
if T <= 0 and #T가 0이고 매수조건이 만족하면
((entrycnt == 0) or
(entrycnt >= 1 and ((MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)))) and #동일방향 재진입금지#
매수조건 Then{
T = 1; #T는 1(매수조건만족했음을 나타냄)
count = count+1; #count는 1증가, 장시작이후 조건만족 횟수를 카운트
#gap이 false이거나 gap이 true이면 count가 2이상일때 진입
if gap == false or (gap == true and count >= 2) Then
{
if cond == false then
buy("B_uparoon");
Else
ExitShort();
}
}
if T >= 0 and
((entrycnt == 0) or
(entrycnt >= 1 and ((MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)))) and #동일방향 재진입금지#
매도조건 Then{
T = -1;
count = count+1;
#gap이 false이거나 gap이 true이면 count가 2이상일때 진입
if gap == false or (gap == true and count >= 2) Then
{
if cond == false Then
sell("S_dnaroon");
Else
ExitLong();
}
}
}
감사합니다.
2016-05-23
160
글번호 98384
답변완료
문의드립니다
input : P(10);
var : MM(0),T(0);
MM = (highest(H,P)+lowest(L,P))/2;
if T == 0 and C > MM Then
T = 1;
if T == 0 and C < MM Then
T = -1;
if T == 1 and CrossDown(C,lowest(L,P)[1]) Then
T = 0;
if T == -1 and CrossUp(C,highest(H,P)[1]) Then
T = 0;
if T == 1 Then
PlotPaintBar(H,L,"강조",red);
if T == -1 Then
PlotPaintBar(H,L,"강조",blue);
정말죄송합니다... 강조식이 수식이 잘못되었나봅니다...
이수식을 이용해서 시스템 을 구축했으면합니다
1. 위 수식에서 매수(빨간표시),매도(파랑색표시)부분을 청산 하는부분에서
같이 뜨면좋겠습니다
예시: 청산=매수 청산=매도 같은 곳에서
청산=매도 되고난후 다음 아무색깔안뜨는곳에서 청산=매수 같이 신호 뜨게 부탁드립니다
2. 1번에서 청산=매도 청산=매수할때 청산은 시가에서 청산 매도,매수는 종가에서 신호가
발생됬으면합니다 이 부분이 안되면 청산이랑 매수,매도 둘다 종가에서 부탁드립니다
2가지가 다가능하면 따로따로 수식하나 부탁드리겠습니다^^..
2. 1번과 다 똑같은데 익절 을 넣고싶습니다 외부변수로 이용하여
예시: 청산=매도 진입후 익절(5)설정할경우 X표시 되게 한후 다음 청산=매수 되면
스위칭 개념으로 진입~
바쁘신데 항상감사합니다^^
2016-05-23
173
글번호 98382
답변완료
문의합니다.
수고하십니다~
3분봉에 조건이 맞으면 신호가 나도록
아래 신호를 사용중인데요...
PlaySound("C:₩₩소리₩차트신호발생.wav");
3분동안 틱수가 움직일때마다 소리가 발생하는데...ㅜ
이것을 1번만 또는 2번만 소리가 나도록 하는 방법있으면 알려주세요~
감사합니다.
2016-05-23
137
글번호 98372
답변완료
라인부탁 드림니다.
안녕하세요...선물차트라인 부탁드림니다.
1.전월의 월봉고점 전월의 월봉저점라인
2.전월의 월봉의25%라인 50%라인 75%라인
일봉차트에적용할수 있도록 만들어주세요.
항상감사합니다. 수고하세요...꾸벅
2016-05-23
165
글번호 98371
답변완료
선물,옵션 자동매매 수식 부탁드립니다
선물>>> 1)단순 이평선(10 일선),2) 단순 이평선(120일선)
1.매수;1)이 2)를 상향 통과시 --->모든 기존 포지션 청산과 동시에 신규 매수함.
2.매도;1)이 2)를 하향 통과시 --->모든 기존 포지션 청산과 동시에 신규 매도함.
3.매매시간;09;00~15;05
옵션>>> 1)단순 이평선(10 일선),2) 단순 이평선(120일선)
1.매수;1)이 2)를 상향 통과시 --->모든 기존 포지션 청산과 동시에 신규 매수함.
2.매도;1)이 2)를 하향 통과시 --->모든 기존 포지션 청산만 함.신규 매도는 안 합니다.
2016-05-23
170
글번호 98365
답변완료
문의
안녕하세요
하루수익목표을 10틱으로설정하고 장시작후 바로10틱수익나면은 바로청산 종료
만약에 5틱손절하고 7틱수익나면은 진짜수익은2틱 그러므로 종료시간까지계속실행
중에8틱수익나면바로청산 종료
위수식부탁합니다 현수식에 넣기만 하면되는지?
2016-05-23
157
글번호 98364
답변완료
시스템 질문
1.
채널붕괴(Channel Breakout Intra-Bar)
여기서 채널붕괴라는 것이 무엇인가요?
2.
Channel Breakout 시스템과 Chan Bout IntBar 시스템은 서로 상관관계가 있나요?
2016-05-23
144
글번호 98363
답변완료
문의드립니다.
예스 글로벌 사용중입니다.
Data2의 봉을 참조로 하여 data1에 매수 매도 신호를 넣고 청산 하려고 합니다.
그런데 data1과 2의 거래 시간이 달라서,
Data2의 거래가 끝나면 data1에 매매 청산을 하고 싶습니다.
이걸 해결할 수 있는 방법은 없나요 ?
SetStopEndofDate로 매 시간 정해놓아야 하나요 ?
(그렇게 시간을 정해놓게 된다면 서머타임때문에 일정시기마다 다시 재설정을 해야해서
이 시스템은 최대한 사용을 피하고 싶습니다)
답변 감사합니다.
좋은 하루 되십시오.
2016-05-23
153
글번호 98359
답변완료
수정부탁드립니다^^
강조식을 현제 강조식을 이용한 시스템
밑에 글에서 청산,진입을 요청하였는데
지금 적용해본결과
강조식은 5로 설정되어있는상태에서 시스템도 같은 5 로 적용해보니
저런식으로 어마어마한 신호 수가 나오네요..ㅎㅎ
수정한번다시 부탁드리겠습니다 강조식 하고 신호가
일치를 못하고있는 상황인듯 합니다~ 수정부탁드립니다
input : Period(8);
var : T(0);
var1 = ma(C,Period);
if var1 > var1[1] Then
T = 1;
if var1 < var1[1] Then
T = -1;
if T == 1 and T[1] == 1 and T[2] != 1 Then
buy("b");
if MarketPosition == 1 and T == -1 and T[1] != -1 Then
sell("bs");
if T == -1 and T[1] == -1 and T[2] != -1 Then
sell("s");
if MarketPosition == -1 and T == 1 and T[1] != 1 Then
buy("sb");
--------------------------------------------------------
input : P(10);
var : MM(0),T(0);
MM = (highest(H,P)+lowest(L,P))/2;
if T == 0 and C > MM Then
T = 1;
if T == 0 and C < MM Then
T = -1;
if T == 1 and CrossDown(C,lowest(L,P)[1]) Then
T = 0;
if T == -1 and CrossUp(C,highest(H,P)[1]) Then
T = 0;
if T == 1 Then
PlotPaintBar(H,L,"강조",red);
if T == -1 Then
PlotPaintBar(H,L,"강조",blue);
기존 강조식입니다
아 그리고 이시스템에 외부변수로 익절을 하나 만들고
싶습니다
예: 매수후 익절 외부변수로 익절을 추가하고 싶습니다
반대로 매도 도 같습니다
2016-05-23
192
글번호 98358