커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1471
글번호 230811
고성 님에 의해서 삭제되었습니다.
2023-12-26
51
글번호 175152
답변완료
문의 드립니다.
키움에서 사용하고 있는 신호입니다.
이 신호의 검색식을 예스에서 구현하고 싶습니다.
a=ma(c,period);
b=(a+avgif(c-a,-1,0.0)
-2*stdevif(c-a,-1,0.0));
d=(b*k);
crossup(c,d)
period : 60
k :1.02
2023-12-22
926
글번호 175151
신대륙발견 님에 의해서 삭제되었습니다.
2023-12-22
9
글번호 175150
답변완료
수정부탁드립니다.
수정부탁드립니다. 텍스트출력이 봉중앙에 나타나는것을 화면 x축 여백25 에 텍스트 출력이 되게 하여주십시요
Input:length선행(20),굵기선행(0.1),간선굵기선행(0.1);
input : Per선행1(0),Per선행2(23.6),Per선행3(38.2),Per선행4(50.0),Per선행5(61.8),Per선행6(76.4),Per선행7(100),Per선행8(123.6),Per선행9(161.8);
Var : j선행(0),lastHiVal선행(0),lasTL선행oVal선행(0),turnPntBit선행(""),TL선행1(0);
var : HV선행(0),LV선행(0),fTsl(0);
var : TL선행11(0),TL선행12(0),TL선행13(0),TL선행14(0),TL선행15(0),TL선행16(0),TL선행17(0),TL선행18(0),TL선행19(0);
var : Tx선행11(0),Tx선행12(0),Tx선행13(0),Tx선행14(0),Tx선행15(0),Tx선행16(0),Tx선행17(0),Tx선행18(0),Tx선행19(0);
Array:valArr선행[10](0),barArr선행[10](0),turnPntArr선행[10]("");
var : Tx선행(0),str선행("");
For j선행 = 0 To 9
{
barArr선행[j선행] = barArr선행[j선행] + 1;
}
HV선행 = highest(h,length선행);
LV선행 = lowest(l,length선행);
Condition1 = HV선행 > HV선행[1] ;
Condition2 = LV선행 < LV선행[1] ;
If Condition1 Then { lastHiVal선행 = H; lasTL선행oVal선행 = 0; }
If Condition2 Then { lasTL선행oVal선행 = L; lastHiVal선행 = 0; }
turnPntBit선행 = "";
If Condition1 and Condition2 Then
{
If Max(valArr선행[1],valArr선행[2]) < H and Min(valArr선행[1],valArr선행[2]) > L Then
turnPntBit선행 = "HiLo";
Else If Max(valArr선행[1],valArr선행[2]) < H Then turnPntBit선행 = "Hi";
Else If Min(valArr선행[1],valArr선행[2]) > L Then turnPntBit선행 = "Lo";
}
Else If Condition1 Then turnPntBit선행 = "Hi";
Else If Condition2 Then turnPntBit선행 = "Lo";
If turnPntBit선행 <> "" Then
{
If turnPntBit선행 == "HiLo" Then
{
valArr선행[1] = IFF(turnPntArr선행[1] == "Hi",H,L);
barArr선행[1] = 0;
TL_SetEnd(TL선행1,NextBarSdate[barArr선행[1]],NextBarStime[barArr선행[1]],valArr선행[1]);
If turnPntArr선행[1] == "Hi" Then
turnPntBit선행 = "Lo";
Else
turnPntBit선행 = "Hi";
}
If turnPntBit선행 <> turnPntArr선행[1] Then
{
for j선행 = 8 downto 1
{
valArr선행[j선행+1] = valArr선행[j선행];
barArr선행[j선행+1] = barArr선행[j선행];
turnPntArr선행[j선행+1] = turnPntArr선행[j선행];
}
}
If turnPntBit선행 <> turnPntArr선행[1] or
(turnPntBit선행 == turnPntArr선행[1] and
((turnPntBit선행 == "Hi" and valArr선행[1] < H) or
(turnPntBit선행 == "Lo" and valArr선행[1] > L))) Then
{
valArr선행[1] = IFF(turnPntBit선행 == "Hi",H,L);
barArr선행[1] = 0;
turnPntArr선행[1] = turnPntBit선행;
If turnPntArr선행[1][1] <> turnPntArr선행[1][0] Then
{
if turnPntArr선행[1][0] == "Hi" Then
{
if valArr선행[1] == DayHigh(0) Then
str선행 = "HH";
Else
str선행 = "LH";
TL선행1= Text_New_Self(NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]], fTsl,"▲▲상승유지신호");
Text_SetBold(TL선행1, 1);
Text_SetColor(TL선행1,Magenta);
Text_SetSize(TL선행1,12);
Text_SetStyle(TL선행1,2,2);
}
Else
{
if valArr선행[1] == DayLow Then
str선행 = "LL";
Else
str선행 = "HL";
TL선행1= Text_New_Self(NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]], fTsl,"▼▼하락유지신호");
Text_SetBold(TL선행1, 1);
Text_SetColor(TL선행1,Blue);
Text_SetSize(TL선행1,12);
Text_SetStyle(TL선행1,2,2);
}
Tx선행 = text_new(NextBarSdate[barArr선행[1]],NextBarStime[barArr선행[1]],valArr선행[1],str선행);
if turnPntArr선행[1][0] == "Hi" Then
Text_SetStyle(Tx선행,2,1);
Else
Text_SetStyle(Tx선행,2,0);
value1 = valArr선행[2]-valArr선행[3];
TL_Delete(TL선행11);
TL_Delete(TL선행12);
TL_Delete(TL선행13);
TL_Delete(TL선행14);
TL_Delete(TL선행15);
TL_Delete(TL선행16);
TL_Delete(TL선행17);
TL_Delete(TL선행18);
TL_Delete(TL선행19);
TL_SetExtRight(TL선행11,False);
TL_SetExtRight(TL선행12,False);
TL_SetExtRight(TL선행13,False);
TL_SetExtRight(TL선행14,False);
TL_SetExtRight(TL선행15,False);
TL_SetExtRight(TL선행16,False);
TL_SetExtRight(TL선행17,False);
TL_SetExtRight(TL선행18,False);
TL_SetExtRight(TL선행19,False);
TL선행11 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행1/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행1/100));
TL선행12 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행2/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행2/100));
TL선행13 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행3/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행3/100));
TL선행14 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행4/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행4/100));
TL선행15 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행5/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행5/100));
TL선행16 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행6/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행6/100));
TL선행17 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행7/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행7/100));
TL선행18 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행8/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행8/100));
TL선행19 = TL_New(NextBarSdate[barArr선행[3]],NextBarStime[barArr선행[3]],valArr선행[2]-value1*(Per선행9/100),NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[2]-value1*(Per선행9/100));
TL_SetExtRight(TL선행11,true);
TL_SetExtRight(TL선행12,true);
TL_SetExtRight(TL선행13,true);
TL_SetExtRight(TL선행14,true);
TL_SetExtRight(TL선행15,true);
TL_SetExtRight(TL선행16,true);
TL_SetExtRight(TL선행17,true);
TL_SetExtRight(TL선행18,true);
TL_SetExtRight(TL선행19,true);
TL_SetColor(TL선행11,RED);
TL_SetColor(TL선행12,GRAY);
TL_SetColor(TL선행13,GRAY);
TL_SetColor(TL선행14,GRAY);
TL_SetColor(TL선행15,YELLOW);
TL_SetColor(TL선행16,GRAY);
TL_SetColor(TL선행17,BLUE);
TL_SetColor(TL선행18,GRAY);
TL_SetColor(TL선행19,YELLOW);
TL_SetSize(TL선행11,굵기선행);
TL_SetSize(TL선행12,굵기선행);
TL_SetSize(TL선행13,굵기선행);
TL_SetSize(TL선행14,굵기선행);
TL_SetSize(TL선행15,간선굵기선행);
TL_SetSize(TL선행16,굵기선행);
TL_SetSize(TL선행17,굵기선행);
TL_SetSize(TL선행18,굵기선행);
TL_SetSize(TL선행19,굵기선행);
Text_Delete(Tx선행11);
Text_Delete(Tx선행12);
Text_Delete(Tx선행13);
Text_Delete(Tx선행14);
Text_Delete(Tx선행15);
Text_Delete(Tx선행16);
Text_Delete(Tx선행17);
Text_Delete(Tx선행18);
Text_Delete(Tx선행19);
Tx선행11 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행11,NextBarSdate,NextBarStime),NumTostr(Per선행1,2)+"%("+NumTostr(TL_GetValue(TL선행11,NextBarSdate,NextBarStime),2)+")");
Tx선행12 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행12,NextBarSdate,NextBarStime),NumTostr(Per선행2,2)+"%("+NumTostr(TL_GetValue(TL선행12,NextBarSdate,NextBarStime),2)+")");
Tx선행13 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행13,NextBarSdate,NextBarStime),NumTostr(Per선행3,2)+"%("+NumTostr(TL_GetValue(TL선행13,NextBarSdate,NextBarStime),2)+")");
Tx선행14 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행14,NextBarSdate,NextBarStime),NumTostr(Per선행4,2)+"%("+NumTostr(TL_GetValue(TL선행14,NextBarSdate,NextBarStime),2)+")");
Tx선행15 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행15,NextBarSdate,NextBarStime),NumTostr(Per선행5,2)+"%("+NumTostr(TL_GetValue(TL선행15,NextBarSdate,NextBarStime),2)+")");
Tx선행16 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행16,NextBarSdate,NextBarStime),NumTostr(Per선행6,2)+"%("+NumTostr(TL_GetValue(TL선행16,NextBarSdate,NextBarStime),2)+")");
Tx선행17 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행17,NextBarSdate,NextBarStime),NumTostr(Per선행7,2)+"%("+NumTostr(TL_GetValue(TL선행17,NextBarSdate,NextBarStime),2)+")");
Tx선행18 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행18,NextBarSdate,NextBarStime),NumTostr(Per선행8,2)+"%("+NumTostr(TL_GetValue(TL선행18,NextBarSdate,NextBarStime),2)+")");
Tx선행19 = Text_New(NextBarSdate,NextBarStime,TL_GetValue(TL선행19,NextBarSdate,NextBarStime),NumTostr(Per선행9,2)+"%("+NumTostr(TL_GetValue(TL선행19,NextBarSdate,NextBarStime),2)+")");
Text_SetStyle(Tx선행11,2,1);
Text_SetStyle(Tx선행12,2,1);
Text_SetStyle(Tx선행13,2,1);
Text_SetStyle(Tx선행14,2,1);
Text_SetStyle(Tx선행15,2,1);
Text_SetStyle(Tx선행16,2,1);
Text_SetStyle(Tx선행17,2,1);
Text_SetStyle(Tx선행18,2,1);
Text_SetStyle(Tx선행19,2,1);
}
}
value1 = valArr선행[2]-valArr선행[3];
TL_SetEnd(TL선행1,NextBarSdate[barArr선행[1]],NextBarStime[barArr선행[1]],valArr선행[1]);
if turnPntArr선행[1][0] == "Hi" Then
{
if valArr선행[1] == DayHigh(0) Then
str선행 = "HH";
Else
str선행 = "LH";
}
Else
{
if valArr선행[1] == DayLow Then
str선행 = "LL";
Else
str선행 = "HL";
}
Text_Setstring(Tx선행,str선행);
Text_SeTLocation(Tx선행,NextBarSdate[barArr선행[1]],NextBarStime[barArr선행[1]],valArr선행[1]);
//TL선행_SetBegin(TL선행11,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행1/100));
TL_SetEnd(TL선행11,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행1/100));
//TL선행_SetBegin(TL선행12,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행2/100));
TL_SetEnd(TL선행12,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행2/100));
//TL선행_SetBegin(TL선행13,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행3/100));
TL_SetEnd(TL선행13,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행3/100));
//TL선행_SetBegin(TL선행14,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행4/100));
TL_SetEnd(TL선행14,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행4/100));
//TL선행_SetBegin(TL선행15,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행5/100));
TL_SetEnd(TL선행15,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행5/100));
//TL선행_SetBegin(TL선행16,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행6/100));
TL_SetEnd(TL선행16,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행6/100));
//TL선행_SetBegin(TL선행17,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행7/100));
TL_SetEnd(TL선행17,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행7/100));
//TL선행_SetBegin(TL선행18,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행8/100));
TL_SetEnd(TL선행18,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행8/100));
//TL선행_SetBegin(TL선행19,NextBarSdate[barArr선행[2]],NextBarStime[barArr선행[2]],valArr선행[1]-value1*(Per선행9/100));
TL_SetEnd(TL선행19,NextBarSdate,NextBarStime,valArr선행[2]-value1*(Per선행9/100));
Text_SeTLocation(Tx선행11,NextBarSdate,NextBarStime,TL_GetValue(TL선행11,NextBarSdate,NextBarStime));
Text_SeTLocation(Tx선행12,NextBarSdate,NextBarStime,TL_GetValue(TL선행12,NextBarSdate,NextBarStime));
Text_SeTLocation(Tx선행13,NextBarSdate,NextBarStime,TL_GetValue(TL선행13,NextBarSdate,NextBarStime));
Text_SeTLocation(Tx선행14,NextBarSdate,NextBarStime,TL_GetValue(TL선행14,NextBarSdate,NextBarStime));
Text_SeTLocation(Tx선행15,NextBarSdate,NextBarStime,TL_GetValue(TL선행15,NextBarSdate,NextBarStime));
Text_SeTLocation(Tx선행16,NextBarSdate,NextBarStime,TL_GetValue(TL선행16,NextBarSdate,NextBarStime));
Text_SeTLocation(Tx선행17,NextBarSdate,NextBarStime,TL_GetValue(TL선행17,NextBarSdate,NextBarStime));
Text_SeTLocation(Tx선행18,NextBarSdate,NextBarStime,TL_GetValue(TL선행18,NextBarSdate,NextBarStime));
Text_SeTLocation(Tx선행19,NextBarSdate,NextBarStime,TL_GetValue(TL선행19,NextBarSdate,NextBarStime));
Text_Setstring(Tx선행11,NumTostr(Per선행1,2)+"%("+NumTostr(TL_GetValue(TL선행11,NextBarSdate,NextBarStime),2)+")");
Text_Setstring(Tx선행12,NumTostr(Per선행2,2)+"%("+NumTostr(TL_GetValue(TL선행12,NextBarSdate,NextBarStime),2)+")");
Text_Setstring(Tx선행13,NumTostr(Per선행3,2)+"%("+NumTostr(TL_GetValue(TL선행13,NextBarSdate,NextBarStime),2)+")");
Text_Setstring(Tx선행14,NumTostr(Per선행4,2)+"%("+NumTostr(TL_GetValue(TL선행14,NextBarSdate,NextBarStime),2)+")");
Text_Setstring(Tx선행15,NumTostr(Per선행5,2)+"%("+NumTostr(TL_GetValue(TL선행15,NextBarSdate,NextBarStime),2)+")");
Text_Setstring(Tx선행16,NumTostr(Per선행6,2)+"%("+NumTostr(TL_GetValue(TL선행16,NextBarSdate,NextBarStime),2)+")");
Text_Setstring(Tx선행17,NumTostr(Per선행7,2)+"%("+NumTostr(TL_GetValue(TL선행17,NextBarSdate,NextBarStime),2)+")");
Text_Setstring(Tx선행18,NumTostr(Per선행8,2)+"%("+NumTostr(TL_GetValue(TL선행18,NextBarSdate,NextBarStime),2)+")");
Text_Setstring(Tx선행19,NumTostr(Per선행9,2)+"%("+NumTostr(TL_GetValue(TL선행19,NextBarSdate,NextBarStime),2)+")");
}
TL_SetSize(TL선행1,굵기선행);
TL_SetColor(TL선행1,black);
2023-12-22
1275
글번호 175149
답변완료
부탁드립니다.
1.
T = Ttsf(c, 20);
MM = ma(c, 20);
MU = MM > MM(1);
CrossUp(T, MM) && MU
TSF함수
LinearRegressionvalue(가격,기간,0)
+
LinearRegressionSlope(가격,기간)
2.
M = BBandsUP(30, 1.8);
LL = Lowest(M, 기간);
HH = Highest(M, 기간);
NL = Valuewhen(1, M<LL(1),M);
Valuewhen(1,BarsSince(M<LL(1))==(기간-k),NL);
CrossUp(C,NL)
기간 2
K 2
3.
A=highest(H, 26, 1);
B=PREDAYHIGH() - PREDAYLOW();
B1=DAYOPEN()+B*0.5;
CROSSUP(C,A) AND C>=B1
1번과2번 수식에 지표와 종목검색 부탁드립니다.
3번은 종목검색만 부탁드립니다
매번 감사드립니다.
2023-12-22
1541
글번호 175148
답변완료
시스템식 부탁드립니다.
안녕하세요?
항상 도움 주셔서 감사합니다.
종목 : 해외선물
차트 : 60분봉
요청사항1
시스템 매매시 아래 항목을 차트화면 왼쪽 상단에 표시하고 싶습니다.
1. 포지션 방향(매수,매도)
2. 현재 누적 계약수량
3. 현재 포지션 평가금액
4. 현재 자동매매 계좌의 예수금(잔고)
5. 현재 자동매매 계좌번호
6. 현재 예수금
7. 현재 포지션의 증거금
혹시 왼쪽 상단에 표현이 안되면
어늬 위치든 한번만 표현이 되게 부탁드립니다.
그리고 이것도 불가능하면
위의 사항을 변수에 넣는 코딩 좀 부탁드립니다.
요청사항2
자동매매시 매수 진입을 마틴게일 방식으로 여러건 여러계약 진입했을 경우
한번에 모든 포지션을 청산하는 시스템식 부탁드립니다.
요청사항3
외부 변수를 변경하고자 할때 input으로 설정한 변수를 다른값으로 대체하고 싶습니다.
그리고 input : a(1) ; 을 시스템식에서 if문을 사용해서 a 값을 2로 바꾼 경우
나중에 시스템을 다시 시작 하거나 다시 적용하면
input : a(1) ; 가 적용되서 a 값은 1으로 되는게 맞나요?
초보입니다. 설명 좀 부탁드립니다.
감사합니다.
2023-12-23
1360
글번호 175147
답변완료
지표 질문입니다
종가 파라볼릭에서
금일 최저가에서 4번째 파라볼릭 상승 전환을 만든 양봉 저가를 표시한다
금일 최고가에서 4번째 파라볼릭 하락 전환을 만든 음봉 고가를 표시한다
감사합니다
2023-12-22
923
글번호 175146
답변완료
질문드립니다
현재 보고 있는 차트의 임의의 봉갯수(이게 안되면 기간이나 봉갯수 설정 따로 plot 넣어서)
지금 현재가가 지금 보고있는 차트의 임의의 봉갯수(혹은 설정해놓은 기간) 전체에서 최저점대비 몇프로 상승했는지 자동으로 표시되는 수식 부탁드립니다.
2023-12-22
923
글번호 175144
답변완료
문의 드립니다.
아래 식에서 추가 하고자 합니다.
20이평 상향 돌파하여 매수 진입 상태에서 20이평 이탈시 매도 청산 할 때
스위칭 매매로 매수 한 것은 청산 하고 동시에 매도 진입하고자 합니다.
매도 진입 후에 20이평을 상향 돌파 후 매수 청산하면서 동시에 매수 진입
부탁드립니다.
Input : shortPeriod(1), longPeriod(20);
value1 = ma(C, shortPeriod);
value2 = ma(C, longPeriod);
# 매수/매도청산
If CrossUP(value1, value2) Then
{
Buy();
}
# 매도/매수청산
If CrossDown(value1, value2) Then
{
ExitLong();
}
2023-12-22
915
글번호 175143