커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8153
글번호 230811
답변완료
수식 부탁 드립니다.
안녕하세요.
15분봉에서 피보나치 조정대를 표시 하려고 합니다.
피보나치 비율은 50.00, 61.80 두개만 표시되면 됩니다.
피보나치의 저점부터 고점까지의 표시는 아래 구간에만 표시되면 좋겠습니다.
--저점
StartDate : [일봉]에서 거래량이 500,000주 이상 발생
StartTime : StartDate의 0900 이후 저점
--고점
EndtDate : [15분봉]에서 볼벤상단20,2 가 볼벤상단30,2를 데드크로스
EndTime : EndtDate의 장종료까지 고점
감사합니다.
2018-02-20
223
글번호 116735
답변완료
수식 문의 드립니다.
재 문의 드립니다..
그러면 시가 가 20일선 위에 있고 1틱아래 저가가 발생하면 그 1틱아래저가에서 매도...생기지 않으면 다음봉들중 20일선 위에서 저가가 생기는 봉의 1틱 아래 저가에서 매도는 가능할지요? ...
2018-02-20
205
글번호 116730
답변완료
에러 수정 부탁드립니다.
385줄에서 에러가 나는데 이유를 못 찾겠습니다.
if MarketPosition == -1 and EntryPrice-3.1>c and data2-data3>700 and data4-data5>100 and data6-data7>150 and data2>200 and data3<-200 and data6>100 and data7<100 Then
ExitShort();
2018-02-20
234
글번호 116721
답변완료
문의드립니다.
도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다.
1. 기타
코딩 문의드립니다.
당일 리버스진입을 생각해보니 경우의 수가 상당히 많더라구요. 아래 제 질문을 비롯해서 몇가지 것들 검색해서 정리해봤는데도 잘 이해는 가지 않습니다. PositionProfit(1) ( 직전거래 손익액이)0보다 크다로 이전 거래 손실인 지 이익인 지 나누는 건 알겠는데요. 직전 거래가 매수로 이익인 지 매도로 이익인지는 뭘로 나누는 지요.
매수 손익시
매수진입가능
매도진입가능
매수 손익시
매수진입불가
매도진입가능
매수 손익시
매수진입가능
매도진입불가
etc.....
/질문들
input : entryCount(2);
var : count(0),Bcond(false),Scond(false) ;
#진입회수제한
Count = 0 ;
for Value1 = 0 to 10 {
if EntryDate( Value1 ) == sdate then
Count = Count + 1;
}
Bcond = MarketPosition == 0 and ExitDate(1) == sdate and PositionProfit(1) > 0 and MarketPosition(1) == -1;
Scond = MarketPosition == 0 and ExitDate(1) == sdate and PositionProfit(1) > 0 and MarketPosition(1) == -1;
if Count < entryCount then {
if 매수조건 and Bcond == false Then
buy();
if 매도조건 and Scond == false Then
sell();
}
안녕하세요
예스스탁입니다.
var : Bcnt(0),Scnt(0),Bcond(false),Scond(False);
if Bdate != bdate[1] Then{
Bcnt = 0;
Scnt = 0;
}
if MarketPosition == 1 and MarketPosition != MarketPosition[1] Then
Bcnt = Bcnt+1;
if MarketPosition == -1 and MarketPosition != MarketPosition[1] Then
Scnt = Scnt+1;
Bcond = MarketPosition == 0 and ExitDate(1) == sdate and PositionProfit(1) < 0 and MarketPosition(1) == -1;
Scond = MarketPosition == 0 and ExitDate(1) == sdate and PositionProfit(1) < 0 and MarketPosition(1) == -1;
if 매수조건 and Bcnt < 2 and Bcond == false Then
buy();
if 매도조건 and Scnt < 2 and Scond == false Then
sell();
/
2018-02-20
237
글번호 116720
답변완료
부탁드립니다
현상태의 그물망차트에서 최고값 최저값 1/4(25%), 2/4(50%),3/4(75%)에
줄을 긋고 싶습니다
부탁드립니다.
2018-02-20
215
글번호 116714
회원 님에 의해서 삭제되었습니다.
2018-02-20
28
글번호 116713
답변완료
부탁 드립니다.
56720 재질문 부탁 드립니다.
미리 감사 드립니다.
2018-02-20
195
글번호 116712
답변완료
수식 부탁드립니다.
관리자님,
1. bollinger band의 상단과 하단의 이격이 벌어지기 시작하면 : 매수
2. bollinger band의 상단과 한단의 이격이 줄어들기 시작하면 : 매도
3. Bollinger Band의 ㅎ단이 고개를 들면: 매도
2018-02-20
181
글번호 116711
답변완료
재문의드립니다.
1.
Input : Price(60),당일수익틱수(100);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false),Tcond(false);
var : T1(0),count(0);
당일수익 = PriceScale*당일수익틱수;
if (sdate != sdate[1] and stime >= 80000) or
(sdate == sdate[1] and stime >= 80000 and stime[1] < 80000) Then{
Tcond = true;
Xcond = false;
N1 = NetProfit;
T1 = TotalTrades;
}
if MarketPosition == 0 Then
count = TotalTrades-T1;
Else
count = TotalTrades-T1+1;
if (sdate != sdate[1] and stime >= 055000) or
(sdate == sdate[1] and stime >= 055000 and stime[1] < 055000) Then{
Tcond = false;
if MarketPosition == 1 Then
exitlong();
if MarketPosition == -1 Then
ExitShort();
}
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] and
(IsExitName("dbp",1) == true or IsExitName("dsp",1) == true) then
Xcond = true;
if Tcond == true and Xcond == false then{
if crossup(c,Price) Then{
buy("b",OnClose,def,count+1);
}
if CrossDown(c,Price) Then{
sell("s",OnClose,def,count+1);
}
}
if MarketPosition == 1 then{
ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts));
}
if MarketPosition == -1 then{
ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts));
}
2
Input : 당일수익틱수(100);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false),Tcond(false);
var : T1(0),count(0);
당일수익 = PriceScale*당일수익틱수;
if (sdate != sdate[1] and stime >= 80000) or
(sdate == sdate[1] and stime >= 80000 and stime[1] < 80000) Then{
Tcond = true;
Xcond = false;
N1 = NetProfit;
T1 = TotalTrades;
}
if MarketPosition == 0 Then
count = TotalTrades-T1;
Else
count = TotalTrades-T1+1;
if (sdate != sdate[1] and stime >= 055000) or
(sdate == sdate[1] and stime >= 055000 and stime[1] < 055000) Then{
Tcond = false;
if MarketPosition == 1 Then
exitlong();
if MarketPosition == -1 Then
ExitShort();
}
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] and
(IsExitName("dbp",1) == true or IsExitName("dsp",1) == true) then
Xcond = true;
if Tcond == true and Xcond == false then{
if crossup(c,dayopen) Then{
buy("b",OnClose,def,count+1);
}
if CrossDown(c,dayopen) Then{
sell("s",OnClose,def,count+1);
}
}
if MarketPosition == 1 then{
ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts));
}
if MarketPosition == -1 then{
ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts));
}
다름이 아니라. 진입시에 하나씩 늘어나는 물량을 1 3 5 7 이런식으로 늘어나게 그 부분만 변경 부탁드립니다.
그럼 수고하세요.
2018-02-19
203
글번호 116710