커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4478
글번호 230811
회원 님에 의해서 삭제되었습니다.
2019-01-14
107
글번호 125221
답변완료
시스템시장 - 시스템접수 문의
시스템시장에 시스템접수할때
꼭 예스랭귀지로해야 하나요?
예스스팟으로는 안되나여?
2019-01-12
217
글번호 125220
답변완료
부탁 드립니다.
도움주심에 감사 드립니다.
첨부 그림과 같이 부탁 드립니다.
//상단 지표수식
var1=-log10(-rci(8)+101)+4.7;
var2=-log10(-rci(9)+101)+4.7;
var3=-log10(-rci(10)+101)+4.7;
var4=-log10(-rci(11)+101)+4.7;
var5=-log10(-rci(12)+101)+4.7;
var6=-log10(-rci(13)+101)+4.7;
var7=-log10(-rci(14)+101)+4.7;
var8=-log10(-rci(15)+101)+4.7;
var9=-log10(-rci(16)+101)+4.7;
var10=-log10(-rci(17)+101)+4.7;
//하단지표수식
var21=log10(rci(8)+101);
var22=log10(rci(9)+101);
var23=log10(rci(10)+101);
var24=log10(rci(11)+101);
var25=log10(rci(12)+101);
var26=log10(rci(13)+101);
var27=log10(rci(14)+101);
var28=log10(rci(15)+101);
var29=log10(rci(16)+101);
var30=log10(rci(17)+101);
var81=log10(100+130);//상_하구분선_black
var85=-log10(-80+101)+4.7; //상_상 RED
var86=-log10(0+101)+4.7; //상_하 green
var95=log10(0+101);//하_상 RED
var96=log10(-80+101);//하_하 GREEN
PlotBaseLine1(var81, "상하구분선",black,def,3);
PlotBaseLine11(var85, "상_상",yellow,def,1);
PlotBaseLine12(var86, "상_하",green,def,1);
PlotBaseLine21(var95,"하_상",yellow,def,1);
PlotBaseLine22(var96,"하_하",green,def,1);
//상단지표
if var1>var1[1] then
plot1(var1,"p1_상단_하락용",red,def,0);
else
plot1(var1,"p1_상단_하락용",black,def,0);
if var2>var2[1] then
plot2(var2,"p2_상단_하락용",red,def,0);
else
plot2(var2,"p2_상단_하락용",black,def,0);
if var3>var3[1] then
plot3(var3,"p3_상단_하락용",red,def,0);
else
plot3(var3,"p3_상단_하락용",black,def,0);
if var4>var4[1] then
plot4(var4,"p4_상단_하락용",red,def,0);
else
plot4(var4,"p4_상단_하락용",black,def,0);
if var5>var5[1] then
plot5(var5,"p5_상단_하락용",red,def,0);
else
plot5(var5,"p5_상단_하락용",black,def,0);
if var6>var6[1] then
plot6(var6,"p6_상단_하락용",red,def,0);
else
plot6(var6,"p6_상단_하락용",black,def,0);
if var7>var7[1] then
plot7(var7,"p7_상단_하락용",red,def,0);
else
plot7(var7,"p7_상단_하락용",black,def,0);
if var8>var8[1] then
plot8(var8,"p8_상단_하락용",red,def,0);
else
plot8(var8,"p8_상단_하락용",black,def,0);
if var9>var9[1] then
plot9(var9,"p9_상단_하락용",red,def,0);
else
plot9(var9,"p9_상단_하락용",black,def,0);
if var10>var10[1] then
plot10(var10,"p10_상단_하락용",red,def,0);
else
plot10(var10,"p10_상단_하락용",black,def,0);
//하단지표
if var21>var21[1] then
plot21(var21,"p1_하단",red,def,0);
else
plot21(var21,"p1_하단",black,def,0);
if var22>var22[1] then
plot22(var22,"p2_하단",red,def,0);
else
plot22(var22,"p2_하단",black,def,0);
if var23>var23[1] then
plot23(var23,"p3_하단",red,def,0);
else
plot23(var23,"p3_하단",black,def,0);
if var24>var24[1] then
plot24(var24,"p4_하단",red,def,0);
else
plot24(var24,"p4_하단",black,def,0);
if var25>var25[1] then
plot25(var25,"p5_하단",red,def,0);
else
plot25(var25,"p5_하단",black,def,0);
if var26>var26[1] then
plot26(var26,"p6_하단",red,def,0);
else
plot26(var26,"p6_하단",blue,def,0);
if var27>var27[1] then
plot27(var27,"p7_하단",red,def,0);
else
plot27(var27,"p7_하단",black,def,0);
if var28>var28[1] then
plot28(var28,"p8_하단",red,def,0);
else
plot28(var28,"p8_하단",black,def,0);
if var29>var29[1] then
plot29(var29,"p9_하단",red,def,0);
else
plot29(var29,"p9_하단",black,def,0);
if var30>var30[1] then
plot30(var30,"p10_하단",red,def,0);
else
plot30(var30,"p10_하단",black,def,0);
2019-01-14
232
글번호 125219
답변완료
수식 재검토 부탁드립니다.
매번 도움 부탁을 드려 송구스럽습니다.
다름이 아니라, 아래와 같은 수식을 다시 만들어 주셔서
시뮬레이션을 해본 결과
다음과 같은 결과가 나왔습니다.
1. 피라미딩= 다른진입신호만 허용 세팅한 경우
매수 신호가 b2 만 발생합니다.
(2가지 조건을 만족하는 경우 b1,b2 신호가 동시에 나오지 않네요)
2. b2신호가 발생한 경우 매수수량이 100개 이면
b21 매도신호는 49개, b22 매도신호는 50개로 표시됩니다.
바쁘시겠지만, 다시한번 검토 부탁드립니다.
================================================================
청산의 if문 연결을 잘못했드렸습니다. 수정한 식입니다.
피라미딩은 다른진입신호만 허용으로 설정하고 적용하시면 됩니다.
input : 매수금액(10000000);
if crossup(c,DayClose(1)) then
buy("b1",OnClose,def,Floor((매수금액*0.4)/c));
if crossup(c,DayHigh(1)) then
buy("b2",OnClose,def,Floor((매수금액*0.6)/c));
if MarketPosition == 1 then
{
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "b1" Then
{
var1 = CurrentContracts-CurrentContracts[1];
var2 = Floor(var1*0.4);
var3 = var1-var2;
}
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "b2" Then
{
var4 = CurrentContracts-CurrentContracts[1];
var5 = Floor(var4*0.4);
var6 = var4-var5;
}
if NextBarSdate != sdate then
{
ExitLong("bx11",OnClose,def,"b1",var2,1);
ExitLong("bx12",AtMarket,def,"b1",var3,1);
ExitLong("bx21",OnClose,def,"b2",var5,1);
ExitLong("bx22",AtMarket,def,"b2",var6,1);
}
}
즐거운 하루되세요
> 야구르트 님이 쓴 글입니다.
> 제목 : 재검토 부탁드립니다
>
며칠전 작성해주신 수식으로 시뮬레이션 해봤는데
제가 피라미딩 세팅을 잘못해서 그런지
매매신호가 거의 나오지 않네요..
참고로, 1분봉 챠트에서 아래의 수식으로 시뮬을 돌려봤습니다.
다시한번 재검토 부탁드립니다. 좋은 하루 되세요
=================================================
input : 매수금액(10000000);
if crossup(c,DayClose(1)) then
buy("b1",OnClose,def,Floor((매수금액*0.4)/c));
if crossup(c,DayHigh(1)) then
buy("b2",OnClose,def,Floor((매수금액*0.6)/c));
if MarketPosition == 1 and NextBarSdate != sdate then
{
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "b1" Then
{
var1 = CurrentContracts-CurrentContracts[1];
var2 = Floor(var1*0.4);
var3 = var1-var2;
}
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "b2" Then
{
var4 = CurrentContracts-CurrentContracts[1];
var5 = Floor(var4*0.4);
var6 = var4-var5;
}
ExitLong("bx11",OnClose,def,"b1",var2,1);
ExitLong("bx12",AtMarket,def,"b1",var3,1);
ExitLong("bx21",OnClose,def,"b2",var5,1);
ExitLong("bx22",AtMarket,def,"b2",var6,1);
}
즐거운 하루되세요
> 야구르트 님이 쓴 글입니다.
> 제목 : 질문있습니다
> 시스템 공부차원에서 문의드립니다.
조건은 다음과 같습니다.
1분봉 챠트에서
1번조건 : 현재가가 전일 종가 돌파시 계좌금액의 40% 매수후 당일 종가에 40% 매도
(장 마감후 신호 발생만 되게 해주시면 됩니다. )
다음날 시가에 나머지 60% 매도
2번조건: 현재가가 전일 고가 돌파시 계좌금액의 나머지(60%) 매수후 당일 종가에 40% 매도
(장 마감후 신호 발생만 되게 해주시면 됩니다. )
다음날 시가에 나머지 60% 매도
분할 매수. 분할 청산할 경우 결과가 어떻게 되는지 보고싶어서
도움 부탁드립니다.
2019-01-12
213
글번호 125218
답변완료
60812번 수식 수정 부탁드립니다.
성실하게 답변해 주셔서 감사드립니다.
60812번 피보나치팬 수식 관련 내용입니다.
피보나치 팬의 100% 라인은
저점을 기준으로 하여 팬이 펼쳐져야 맞는 것 같은데요,
제공된 수식은 저점기준이 모호하게 나타나네요.
수식에 수정하여야 할 부분이 있는것 같습니다.
첨부된 그림을 살펴보시고 수식 수정 부탁드립니다.
2019-01-11
272
글번호 125217
답변완료
안녕하세요
안녕하세요^^
아래 2번 지표식중에 가운데 중심추세선 수식을 제외하고 나머지 수식을 1번 추세선지표식에 합성을 부탁을 드립니다.
매번 도움주셔서 감사드립니다.
1번 지표
Input:length(10),종가사용여부(0),파동선두께(0.8),수치표시(1);
Var:j(0),jj(0),HH(0),LL(0),최종고가(0),최종저가(0),최종꼭지점(""),처리구분(""),
TL1(0),Text1(0);
Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime
#==========================================#
HH = IFF(종가사용여부==1,C,H);
LL = IFF(종가사용여부==1,C,L);
If Index == 0 Then
{
고[1,1] = HH;
저[1,1] = LL;
}
Condition1 = Highest(HH,length) == HH and 최종고가 <> HH;
Condition2 = Lowest (LL,length) == LL and 최종저가 <> LL;
처리구분 = "";
If Condition1 and Condition2 Then // 기간고점과 기간저점 동시 발생
{
If 최종꼭지점 == "저점" Then
{
If 저[1,1] > LL Then 처리구분 = "저점처리";
Else 처리구분 = "고점처리";
}
Else If 최종꼭지점 == "고점" Then
{
If 고[1,1] < HH Then 처리구분 = "고점처리";
Else 처리구분 = "저점처리";
}
}
Else If Condition1 Then 처리구분 = "고점처리";
Else If Condition2 Then 처리구분 = "저점처리";
#==========================================#
If 처리구분 == "고점처리" Then
{
최종고가 = HH; // 신규고점을 체크하기 위해 저장
If 최종꼭지점 == "저점" Then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
고[j,jj] = 고[j-1,jj];
}
}
고[1,1] = HH;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
If 수치표시 == 1 Then
{
Text1 = Text_New(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1],2)+NewLine+"매▼도"+"+"+NumToStr(abs(고[1,1]-저[1,1])/PriceScale,0));
Text_SetStyle(Text1, 2, 1);
Text_SetColor(text1,BLUE);
}
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,RED);
}
Else If 고[1,1] < HH Then // 1번 고점보다 높은 고가 출현
{
고[1,1] = HH;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
// 시작점은 변동없고 끝점의 위치가 현재 봉으로 연장된 것임
If 수치표시 == 1 Then
{
Text_SetLocation(Text1,고[1,3],고[1,4],고[1,1]);
Text_SetString(Text1,NumToStr(고[1,1],2)+NewLine+"매▼도"+"+"+NumToStr(abs(고[1,1]-저[1,1])/PriceScale,0));
PlaySound("C:₩예스트레이더₩data₩Sound₩Stop.wav");
}
}
최종꼭지점 = "고점";
}
#==========================================#
If 처리구분 == "저점처리" Then
{
최종저가 = LL;
If 최종꼭지점 == "고점" then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
저[j,jj] = 저[j-1,jj];
}
}
저[1,1] = LL;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
If 수치표시 == 1 Then
{
Text1 = Text_New(저[1,3],저[1,4],저[1,1],"매▲수"+"-"+NumToStr(abs(고[1,1]-저[1,1])/PriceScale,0)+NewLine+NumToStr(저[1,1],2));
Text_SetStyle(Text1, 2, 0);
Text_SetColor(text1,red);
}
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,BLUE);
}
Else If 저[1,1] > LL then
{
저[1,1] = LL;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
If 수치표시 == 1 Then
{
Text_SetLocation(Text1,저[1,3],저[1,4],저[1,1]);
Text_SetString(Text1,"매▲수"+"-"+NumToStr(abs(고[1,1]-저[1,1])/PriceScale,0)+NewLine+NumToStr(저[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
}
최종꼭지점 = "저점";
}
2번 지표
input:barCnt(5);
Var:j(0),turnPntBit(""),TL1(0),TL33(0),TL44(0),HD(0),HT(0),LD(0),LT(0),HH(0),LL(0);
var : TL121(0),TL122(0),tx121(0),tx122(0);
Array:valArr[10](0),barArr[10](0),turnPntArr[10]("");
// 봉이 새로 생겼으므로 봉개수 관리하는 변수들의 봉개수 값 1씩 증가
For j = 0 To 9 {
barArr[j] = barArr[j] + 1;
}
// 고점조건 = 5-1-5에서 가운데 고가가 좌측 5봉과 우측 5봉 고가보다 높다
// 저점조건 = 5-1-5에서 가운데 저가가 좌측 5봉과 우측 5봉 저가보다 낮다
Condition1 = Highest(H,barCnt)[barCnt+1] <= H[barCnt] and H[barCnt] > Highest(H,barCnt);
Condition2 = Lowest(L,barCnt)[barCnt+1] >= L[barCnt] and L[barCnt] < Lowest(L,barCnt);
// 전환점구분 null값으로 초기화;
// if 고점조건, 저점조건 동시 만족시 then
// if 이전 고점,저점 범위를 모두 벗어났을 때
// 전환점구분 = 고저점;
// else if 이전 고점을 갱신했다면 전환점구분 = 고점;
// else if 이전 저점을 갱신했다면 전환점구분 = 저점;
// else if 전환점배열의 현재(배열상 1번째)값이 고점이면 전환점구분 = 저점;
// else if 전환점배열의 현재 값이 저점이면 전환점구분 = 고점;
// else if 고점조건 만족하면 전환점구분 = 고점;
// else if 저점조건 만족하면 전환전구분 = 저점;
turnPntBit = "";
If Condition1 and Condition2 Then {
If Max(valArr[1],valArr[2]) < H[barCnt] and Min(valArr[1],valArr[2]) > L[barCnt] Then
turnPntBit = "HiLo";
Else If Max(valArr[1],valArr[2]) < H[barCnt] Then turnPntBit = "Hi";
Else If Min(valArr[1],valArr[2]) > L[barCnt] Then turnPntBit = "Lo";
Else If turnPntArr[1] == "Hi" Then turnPntBit = "Lo";
Else If turnPntArr[1] == "Lo" Then turnPntBit = "Hi";
}
Else If Condition1 Then turnPntBit = "Hi";
Else If Condition2 Then turnPntBit = "Lo";
// if 전환점구분에 값이 있을 때만 아래 실행, 없으면 통과
If turnPntBit <> "" Then
{
// if 전환점구분이 고저점이면 then
// 이전 파동은 연장시키고 아래에서 새로이 파동선을 추가토록 한다.
If turnPntBit == "HiLo" Then
{
valArr[1] = IFF(turnPntArr[1] == "Hi",H[barCnt],L[barCnt]);
barArr[1] = barCnt;
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
If turnPntArr[1] == "Hi" Then
turnPntBit = "Lo";
Else
turnPntBit = "Hi";
}
// if 신규 전환점구분이 현재(전환점배열 1번째)와 다르면 then
// 배열값들을 이전값으로 Move;
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 전환점구분이 바뀌었거나 또는
// (전환점구분은 안바뀌었는데
// (이전 고점보다 높은 고점이 발생했거나 또는
// 이전 저점보다 낮은 저점이 발생했으면)) then
If turnPntBit <> turnPntArr[1] or
(turnPntBit == turnPntArr[1] and
((turnPntBit == "Hi" and valArr[1] < H[barCnt]) or
(turnPntBit == "Lo" and valArr[1] > L[barCnt]))) Then {
// 값 배열에는 고점 또는 저점을 대입;
// 봉개수 배열에는 입력변수의 봉개수 대입;
// 전환점 배열에 전환점구분값을 대입;
valArr[1] = IFF(turnPntBit == "Hi",H[barCnt],L[barCnt]);
barArr[1] = barCnt;
turnPntArr[1] = turnPntBit;
// if 이전봉대비 전환점구분이 바뀌었다면 추세선 새로 그리고;
// else 전환점구분이 안바뀌었으면 값만 바뀐거므로 추세선 연장;
// If turnPntArr[1][1] <> turnPntArr[1][0] Then
// TL1 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2],
// sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
// Else
// TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
}
// TL_SetSize(TL1,0);
// TL_SetColor(TL1,GREEN);
var : TL11(0),TL12(0);
if turnPntArr[1][0] == "Hi" Then
{
TL_delete(TL12);
TL_Delete(TL11);
TL11 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[1],sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
TL_SetExtRight(TL11,true);
TL_SetColor(TL11,BLUE);
TL_SetSize(TL11,3);
TL_Delete(TL121);
var1 = valArr[1]-abs(valArr[1]-valArr[2])*0.382;
var2 = valArr[1]-abs(valArr[1]-valArr[2])*0.618;
TL_SetExtRight(TL121,true);
TL_SetColor(TL121,GREEN);
TL_SetSize(TL121,1);
TL_Delete(TL122);
TL_SetExtRight(TL122,true);
TL_SetColor(TL122,GREEN);
TL_SetSize(TL122,1);
#텍스트 출력
#출력전에 이전에 출력한 것은 삭제(즉 매봉 새로 출력)
Text_Delete(tx121);
Text_Delete(tx122);
#고점-38.2 값 출력
#고점-61.8 값 출력
tx121 = Text_New(sdate,stime,var1,NumToStr(var1,2));
tx122 = Text_New(sdate,stime,var2,NumToStr(var2,2));
}
if turnPntArr[1][0] == "Lo" Then
{
TL_delete(TL11);
TL_Delete(TL12);
TL12 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[1],sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
TL_SetExtRight(TL12,true);
TL_SetColor(TL12,RED);
TL_SetSize(TL12,3);
TL_Delete(TL121);
var1 = valArr[1]+abs(valArr[1]-valArr[2])*0.382;
var2 = valArr[1]+abs(valArr[1]-valArr[2])*0.618;
TL_SetExtRight(TL121,true);
TL_SetColor(TL121,GREEN);
TL_SetSize(TL121,1);
TL_Delete(TL122);
TL_SetExtRight(TL122,true);
TL_SetColor(TL122,GREEN);
TL_SetSize(TL122,1);
#텍스트 출력
#출력전에 이전에 출력한 것은 삭제(즉 매봉 새로 출력)
Text_Delete(tx121);
Text_Delete(tx122);
#저점+38.2 값 출력
#저점+61.8 값 출력
tx121 = Text_New(sdate,stime,var1,NumToStr(var1,2));
tx122 = Text_New(sdate,stime,var2,NumToStr(var2,2));
}
if bdate != BDate[1] Then{
HD = sdate;
HT = stime;
LD = sdate;
LT = stime;
HH = H;
LL = L;
}
if H > HH Then{
HH = H;
HD = sdate;
HT = stime;
}
TL_Delete(TL33);
if turnPntArr[1][0] == "Hi" Then{
TL33 = TL_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],HD,HT,dayhigh);
}
if turnPntArr[1][0] == "Lo" Then{
TL33 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2],HD,HT,dayhigh);
}
TL_SetExtRight(TL33,true);
TL_setcolor(TL33,blue);
TL_setsize(TL33,0.8);
if L < LL Then{
LL = L;
LD = sdate;
LT = stime;
}
TL_Delete(TL44);
if turnPntArr[1][0] == "Hi" Then{
TL44 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2],LD,LT,daylow);
}
if turnPntArr[1][0] == "Lo" Then{
TL44 = TL_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],LD,LT,daylow);
}
TL_SetExtRight(TL44,true);
TL_setcolor(TL44,blue);
TL_setsize(TL44,0.8);
#텍스트 출력값 위치를 항상 마지막완성봉 위치로 옮김
Text_SetLocation(Tx121,sdate,stime,Text_GetValue(Tx121));
Text_SetLocation(Tx122,sdate,stime,Text_GetValue(Tx122));
#텍스트는 정렬
Text_SetStyle(tx121,0,1);
Text_SetS
2019-01-13
254
글번호 125216
답변완료
종목검색식 부탁드려요
사용지표: DMI(14)
조건식
Drectional movement index 50이상 and DIPlus는 30이상 and
DIMinus가 10이하 떨어진 종목 검색식 부탁합니다
2019-01-11
217
글번호 125215
답변완료
부탁드립니다
항상 수고가 많습니다
당월 시가 고가 저가 종가 중심가와 전월 시가 고가 저가 종가 중심가를 수평선으로 나타나게 해주시면 감사하겠습니다.
2019-01-11
221
글번호 125214
답변완료
함수요청
안녕하세요?
아래는 시그널메이커(하나금융투자)로 사용했던 함수입니다.
예스트레이더로 사용할 수 있도록 함수 변환 요청드립니다.
n번째 봉에서 손실이면 n+1 봉 시가에 청산
Param : pBarsSE(5);
if BarsSinceEntry = pBarsSE And OpenPositionProfit < 0 Then
Begin
if SignalPosition = 1 Then
ExitLong("SLEL",Atmarket)
Else if SignalPosition = -1 Then
ExitShort("SLES",Atmarket);
End;
======================================================
n번째 봉에서 손실이면 n+1 봉 종가에 청산
Param : pBarsSE(5);
var : preOPP(0);
if BarsSinceEntry = pBarsSE + 1 And preOPP < 0 Then
Begin
if SignalPosition = 1 Then
ExitLong("SLEL")
Else if SignalPosition = -1 Then
ExitShort("SLES");
End;
preOPP = OpenPositionProfit;
2019-01-11
228
글번호 125211