커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4402
글번호 230811
답변완료
청산식 수정요망
청산식으로 아래와 같이 했는데 않됩니다
수정부탁드립니다
If C[0]>C[1] Then {
Condition11=True;
Var1=C[0];
}
If CountIF(Condition11==True,2)>0 and C[0]>C[1] and C[0]>Var1 Then {
Condition12=True;
Var2=C[0];
Var3=Index;
}
If CountIF(Condition12==True,2)>0 and C[0]>C[1] and C[0]>Var2 Then {
Condition13=True;
Var4=C[0];
Var5=Index;
Var6=((var2-Var1)+(Var4-Var2))*0.5 * 0.6;
}
If Condition13==True and MarketPosition==1 and Index<var5+7
and C[0]<var2+ Var6*(Index-Var5)
Then
exitlong("bx5",AtMarket);
2018-06-28
217
글번호 120108
답변완료
문의드립니다
수고가 많습니다 ^^
아래수식은 어느 회원분이 오래전에 문의하신것을 검색한것인데요
이수식 2개를 각각 '가중" 으로 변환부탁드리겠습니다
그리고 아래 "수식1"의 "조건4"에서 "(L,40)"의 40은 무엇을 뜻하는것인지 설명좀 부탁드리겠습니다
사용용도에따라 이수치를 변경하여 적용할수있을지를 판단해보기위함입니다
감사합니다
(수식1)
input:shortperiod(12),Longperiod(26);
if nthhighest(1,macd(shortperiod,Longperiod),100) > //조건1
nthhighest(2,macd(shortperiod,Longperiod),100) and //조건2
macd(shortperiod,Longperiod) > macd(shortperiod,Longperiod)[1] and //조건3
(L<Lowest(L,40)[1] || L[1] < Lowest(L,40)[2]) then //조건4
plot1(L-(pricescale*2),"저↗상승div");
if nthLowest(1,macd(shortperiod,Longperiod),100) < //조건1
nthLowest(2,macd(shortperiod,Longperiod),100) and //조건2
macd(shortperiod,Longperiod) < macd(shortperiod,Longperiod)[1] and //조건3
(h> highest(h,40)[1] || h[1] > highest(h,40)[2]) then //조건4[]
plot2(h+(pricescale*2),"고↘하락div");
(수식2)
Input : Period1(12), Period2(26), Period3(9);
input : Left(3),right(3);
var : MACDV(0),MACDS(0),Hcnt(0),Lcnt(0);
MACDV = MACD(Period1,Period2);
if SwingHighbar(1,MACDV,Left,right,Left+right+1) != -1 Then{
Hcnt = Hcnt+1;
var1 = MACDV[Right];
var2 = var1[1];
var3 = H[right];
var4 = var3[1];
#지표상승 가격하락
if Hcnt >= 2 and var1 < var2 and var3 > var4 Then
plot1(H,"하락다이버전스");
}
if SwingLowBar(1,MACDV,Left,right,Left+right+1) != -1 Then{
Lcnt = Lcnt+1;
var11 = MACDV[Right];
var12 = var11[1];
var13 = L[right];
var14 = var13[1];
#지표 상승 가격하락
if Lcnt >= 2 and var11 > var12 and var13 < var14 Then
plot2(L,"상승다이버전스");
}
2018-06-28
240
글번호 120107
답변완료
문의드립니다.
선물차트 기준으로 문의드립니다.
가중이평 20선이 <단순이평 100선과 tirone levels 지표(기간값 100)의 중간선>을 모두 크로스했을때를 시스템으로 나타내고자 합니다. == 반드시 두선을 모두 크로스해야 합니다.
골든이면 매수, 데드크로스면 매도로 표현하고자 합니다.
각 지표의 기간값은 변경 가능하게 부탁드립니다.
수식을 어떻게 작성해야 하는지요?
부탁드립니다. 그리고 항상 감사드립니다. 수고하세요!!!
2018-06-27
184
글번호 120106
답변완료
수정부탁드립니다
58363번 5일선기준선20일교차시60일교차시120일교차시 매수/매도신호발생
체크표시을활수있게해주세요 감사합니다
2018-06-27
192
글번호 120105
답변완료
전일주가이격도
안녕하세요 관리자님 더운 여름 수고많으십니다.
아래의 지난번 작성해주신 지표 아주아주 잘쓰고 있습니다.
-아 래-
var1 = (DayHigh(1)-dayopen(1))+dayopen;
value1 = C/var1*100-100;
var2 = dayopen-(DayOpen(1)-DayLow(1));
value2 = C/var2*100-100;
plot1(value1,"고가");
plot2(value2,"저가");
plot3(0,"중심선");
다름이아니오라 상기의 이격도을 표현했을때 전일의 최고,최저 이격도의 값을 오늘의 이격도에 직선으로 표현하고 싶습니다. 도와주십시요
2018-06-27
194
글번호 120104
답변완료
일봉종가
1봉전 일봉 종가와 장중 0봉전 3분봉 고가비교
H[0]/dayclose[1]<1.2
아닌가요?
확인해보니 적용안되고 매일 첫봉에만 한정해서 검색이 됩니다.
원레이런거에요?
2018-06-27
180
글번호 120103
답변완료
수식 수정 부탁드립니다.
안녕하세요? 수식 수정하고 싶어서 다시 글 남깁니다.
아래식중 맨 아래쪽에
if H >= LatestEntryPrice(0)*1.05 Then
Condition4 = true;
if Condition4 == true Then
ExitLong("bx2",AtStop,LatestEntryPrice(0)*1.02);
이부분을 보면 익절이 같은조건으로 마지막 진입에서 5% 올랐다가 2%까지 내려오면 익절이 나가게 되어있는데..
1차 2차 3차 매수후 올랐다가 내리는 폭을 조절해서 익절을 하고 싶습니다.
예를 들어
1차매수 시점 진입후 5% 올랐다가 2% 까지 내려오면 익절
2차매수 시점 진입후 7% 올랐다가 4% 까지 내려오면 익절
3차매수 시점 진입후 6% 올랐다가 3% 까지 내려오면 익절
이런식으로 추가하고 싶습니다.
감사합니다.
input : 투자금액(1000000),투자비율1(45),투자비율2(30),투자비율3(25);
input : P1(9),P2(14);
var : count(0),sumV1(0),sumV2(0);
var : mav1(0),mav2(0);
var : m1(0),m2(0),m3(0),dd(0),entry(false);
sumV1 = 0;
sumV2 = 0;
for count = 0 to P2{
if count < P1 Then
sumV1 = sumV1+DayClose(count);
if count < P2 Then
sumV2 = sumV2+DayClose(count);
}
maV1 = sumV1 / P1;
maV2 = sumV2 / P2;
m1 = 투자금액*(투자비율1/100);
m2 = 투자금액*(투자비율2/100);
m3 = 투자금액*(투자비율3/100);
if bdate != bdate[1] Then
{
dd = dd+1;
entry = true;
}
if TotalTrades > TotalTrades[1] and MarketPosition == 0 Then
entry = false;
if MarketPosition == 0 and Condition1 == false and L < mav1 and entry == true Then
{
buy("b1",AtLimit,mav1,Floor(m1/mav1));
}
if MarketPosition == 1 Then
{
if CurrentContracts > CurrentContracts[1] Then
{
Condition1 = false;
Condition2 = false;
Condition4 = false;
if MaxEntries == 1 Then
var1 = dd;
}
if CurrentContracts < CurrentContracts[1] and LatestExitName(0) == "bl1" Then
Condition3 = true;
if MaxEntries == 1 and L > mav2 Then
buy("b2",AtLimit,mav2,Floor(m2/mav2));
if MaxEntries == 2 Then
{
buy("b3",AtLimit,LatestEntryPrice(0)*0.95,Floor(m3/LatestEntryPrice(0)*0.95));
}
if MaxEntries == 3 then
{
if Condition3 == false then
ExitLong("bl1",AtStop,LatestEntryPrice(0)*0.95,"",Floor(MaxContracts*0.5),1);
ExitLong("bl2",AtStop,LatestEntryPrice(0)*0.90);
}
if Condition1 == false then
{
ExitLong("bp1",atlimit,AvgEntryPrice*1.05,"",Floor(MaxContracts*0.5),1);
}
if Condition2 == false then
{
ExitLong("bp2",atlimit,AvgEntryPrice*1.10,"",Floor(MaxContracts*0.3),1);
}
ExitLong("bp3",atlimit,AvgEntryPrice*1.15);
if NextBarSdate > sdate and dd >= var1+4 Then
exitlong("bx1",AtMarket);
if H >= LatestEntryPrice(0)*1.05 Then
Condition4 = true;
if Condition4 == true Then
ExitLong("bx2",AtStop,LatestEntryPrice(0)*1.02);
}
Else
{
Condition3 = false;
}
2018-06-27
182
글번호 120102
답변완료
수식 문의 드립니다.
1) 종가 상한가를 쳤을경우 에는 자동매매식에서 조건의 매도 시그날이 뜨도 팔리지 않게
하는 방법 을 알려 주십시오
예) crossdown(macdlong, macdlongsig) then sell();
상기 조건에 걸려도 상한가의 경우에는 팔리지 않도록 할려면 어떻게 해야 하는지 알려 주십시오
2) 일봉을 사용할 경우 매수 SIGNAL이 뜨고 다음날 아침 시가에 매수가 되는것이 정상인데,
일봉에서 매수 시그날이 떴을경우 동시호가 들어가기전 15시 15분에 매수 가 될수 있게
하는 식을 알려 주십시오
예) crossup(macdlong, macdlongsig) && c>ma(c,60) then buy();
반대로 매도가 떳을때도
예) crossdown(macdlong, macdlongsig) then sell();
상기식을 통상 일봉의 경우 당일시그날이 나오면, 그 다음날 아침 장 시작과 동시에 매수 되는데,이 Signal이 오면, 다음날 아침 시가에 매수가 되기전 금일 (당일) 15시 15분에 매수 또는 매도가 될수 있도록 해 주시길 바랍니다.
2018-06-27
195
글번호 120101
답변완료
수식 문의 드립니다.
조건 검색 식에 아래 상항을 넣을려고 합니다.
1) 총 거래 대금 50 억 이상 조건 표기를 알려 주십시오
2018-06-27
230
글번호 120100