커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내

안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
프로필 이미지
예스스탁
2026-02-27
4734
글번호 230811
지표

관리자에 의해 프로그램 사용법 QnA로 이동되었습니다

프로필 이미지
수류
2015-11-03
7
글번호 92025
시스템
답변완료

44830번글 관련 다시 검토 부탁드립니다.

전화통화하고 생각해 보았는데요... 편법으로 1.매수조건의 1)항목의 과거조건을 시스템식이 인식을 하지 못한다면 아래의 1)항에서 조건을 만족하면 아예 1주만 1차매수하여 신호를 유지시켜 준 다음 당초 2)항의 1차매수에서 2차매수를 2차비중만큼, 3)항의 2차매수에서 3차매수를 3차비중만큼 매수하면 되지 않을까요? 갑자기 생각나서 쓴글이고 늦은 시간이니 내일 검토해 주세요... 오늘 수고 많으셨습니다. 이전의 질문내용은 아래와 같습니다. ----------------------------------------------------------------------------- 아래와 같은 시스템식에 이동평균선에 대한 외부변수를 다음과 같이 설정하고, input : 매수이평기간(15); 1. 매수조건 1) 주가가 "일봉이평기간(120)" 즉, 120일선 위에 있고, 120일 최고가를 갱신하고, "매수이평기간(15)" 즉, 15일선이 우상향하며, 엔벨로프 {"P(10)" : "매수위치1차(10)"} 즉, 엔벨로프 10:10의 상단선을 종가가 돌파하면 다음과 같이 "매수이평기간(15)" 15일선 부근에서 매수함. 단, 4가지 조건 모두를 만족할때만 1차매수를 함. 2) 1)의 조건을 모두 만족할때 "매수이평기간(15)" 15일선 부근 즉, "매수위치보정(1)"인 +1% 위에서 1차매수를 하고 차트에 "1차매수"를 표시함. 정리하면 15일선 +1%에서 1차매수를 "매수비중1차(30)"인 30%를 함. 3) 1차매수 후 1차매도없이 하락하면 "매수위치2차(7)" 즉, 7% 하락하면 2차매수를 "매수비중2차(35)인 35%를 하고 차트에 "2차매수"를 표시함. 2. 매도조건 1) 기타 매도조건은 기존의 시스템식과 같음. 2) "타점보유일수(5)"일때 "익절"에 대한 내용도 기존의 시스템식과 같음. 3. 기타 사항은 첨부한 차트를 참고해 주세요.. 기존 시스템식은 아래와 같습니다. -------------------------------------------------------------------------------------- input : 전략식시작일자(20151028), 전략식시작시간(090000), 전략총매수금액(5000); input : 전략식종료일자(20151231); input : 갭하락(5), 시장보정계수(5),일봉이평기간(120),이평보정계수(5); input : P(10), 매수위치1차(10), 매수위치2차(7), 매수위치3차(14); input : 매수위치보정(1); input : 매도위치1차(7), 매도위치2차(14); input : 매수비중1차(30), 매수비중2차(35), 매수비중3차(35); input : 매도비중1차(50), 매도비중2차(50); input : 전략식진입횟수(100); input : 타점보유일수(5); var : sum(0),mav(0),cnt(0),eup(0),edn(0),Didx(0),LatestEntryDidx(0),Ecnt(0); var : TimeCond(false),Xcond1(false),Xcond2(false),Loss(0),LatestEntrylow(0); var : Period(0),매수1차(0); var : cum1(0),cum2(0),ma1(0),ma2(0); # 일자수 계산 if date != date[1] Then Didx = Didx+1; # 일봉 120이평 계산(전일기준,전전일기준) cum1 = 0; cum2 = 0; for cnt = 1 to 일봉이평기간{ cum1 = cum1+DayClose(cnt); cum2 = cum2+DayClose(cnt+1); } # 전일기준 일봉 120일이평 ma1 = cum1/일봉이평기간; # 전전일기준 일봉 120일이평 ma2 = cum2/일봉이평기간; #기본값은 기간은 P, %는 매수위치1차 Period = P; 매수1차 = 매수위치1차; #갭하락이면 #기간은 기존Period값+시장보정계수 #%는 기존 매수1차값에 + 시장보정계수 if dayopen < DayClose(1)*(1-갭하락/100) Then{ Period = Period + 시장보정계수; 매수1차 = 매수1차 + 시장보정계수; } #이평하락이면 #기간은 기존Period값+이평보정계수 #%는 기존 매수1차값에 + 이평보정계수 if ma1 < ma2 and DayClose(일봉이평기간+1) > 0 Then{ Period = Period + 이평보정계수; 매수1차 = 매수1차 + 이평보정계수; } #당일포함 일봉 Period개의 종가를 누적 sum = 0; for cnt = 0 to Period-1{ sum = sum+DayClose(cnt); } #누적값을 Period로 나누어 평균값 산출 mav = sum/Period; #상단계산 Eup = mav+mav*(매수1차/100); #하단계산 Edn = mav-mav*(매수1차/100); #지정일 지정시간이 되면 TimeCond는 True(그전에는 false) if sdate == 전략식시작일자 and (stime == 전략식시작시간 or (stime > 전략식시작시간 and stime[1] < 전략식시작시간 )) then TimeCond = true; if sdate > 전략식종료일자 Then TimeCond = false; #TimeCond가 True가 된 후 if TimeCond == true then{ if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "1차매수" Then Ecnt = Ecnt+1; #무포지션 상태에서 매수위치1차에 도달하면 매수 if MarketPosition == 0 and Ecnt < 전략식진입횟수 Then buy("1차매수",atlimit,Edn*(1+매수위치보정/100),Floor((전략총매수금액*10000/c)*(매수비중1차/100))); #첫매수이후 if MarketPosition == 1 Then{ #최근 진입시점의 일자수 저장 if CurrentContracts > CurrentContracts[1] Then{ LatestEntryDidx = Didx; LatestEntrylow = L; } #1차매수 발생 후 매수위치2차에 도달하면 매수 if MaxEntries == 1 Then buy("2차매수",atlimit,Edn[BarsSinceEntry]*(1-매수위치2차/100),Floor((전략총매수금액*10000/c)*(매수비중2차/100))); #1차매수 발생 후 매수위치3차에 도달하면 매수 if MaxEntries == 2 Then buy("3차매수",atlimit,Edn[BarsSinceEntry]*(1-매수위치3차/100),Floor((전략총매수금액*10000/c)*(매수비중3차/100))); #1차매도가 한번 발생하면 더이상 발생못하도록 Xcond1은 true if LatestExitName(0) == "1차매도" then Xcond1 = true; #2차매도가 한번 발생하면 더이상 발생못하도록 Xcond2는 true if LatestExitName(0) == "2차매도" then Xcond2 = true; #Xcond1이 false일때 #진입이후 최저가에서 매도위치1차 만큼 상승하면 일부 청산 if Xcond1 == false Then exitlong("1차매도",Atlimit,lowest(L,BarsSinceEntry)*(1+매도위치1차/100),"",Floor(MaxContracts*(매도비중1차/100)),1); #Xcond2가 false일 #진입이후 최저가에서 매도위치2차 만큼 상승하면 전량청산 if Xcond2 == false Then exitlong("2차매도",Atlimit,lowest(L,BarsSinceEntry)*(1+매도위치2차/100)); #최근 진입후 3일이상 경과(현재 일자수가 최근진입시점의 일자수보다 3이상증가) if Didx >= LatestEntryDidx+타점보유일수 and Xcond1 == false and CurrentContracts == CurrentContracts[1] Then{ #최근 진입이후 3일되었을때의 최근진입일 포함3일 최저가 계산 if date != date[1] and Didx == LatestEntryDidx[BarsSinceEntry]+3 Then{ Loss = daylow(1); for cnt = 1 to 타점보유일수 { if daylow(cnt) < Loss Then Loss = daylow(cnt); } } #Loss값 이하로 가격하락하면 전량 청산 exitlong("손절",AtStop,Loss); } #최종 매수일 포함 3일경과되면 다음날 시가에 매도 if Didx == LatestEntryDidx+(타점보유일수-1) and stime == 150000 Then{ exitlong("익절2",AtMarket); } # 1차매도가 발생한 상황 # 가장 최근 진입일의 당일최저가보다 낮은 시세 발생하면 전량청산 # if L < LatestEntrylow and Xcond1 == false Then # LatestEntrylow = L; # if Xcond1 == true and CurrentContracts == CurrentContracts[1] Then{ # exitlong("익절1",AtStop,LatestEntrylow); # } } else{ #매수포지션이 아니면 false로 초기화 Xcond1 = false; Xcond2 = false; } }
프로필 이미지
종풍화성
2015-11-03
194
글번호 92024
시스템
답변완료

추가 문의 드립니다.

매우 성의있고 만족한 수식 답변(44823)에 깊이 깊이 감사 드립니다. 그림과 같이 텍스트 위치를 변경할려면 (별표 부분을 화살표 위치로) 70~73행을 어떻게 고치면 되는지요? input : 소수점자리조정(10000); input : 아시아시작(081000),아시아종료(152000); input : 유럽시작(153000),유럽종료(213000); input : 미국시작(214000),미국종료(065000); var : cnt(0),Tcond1(false),Tcond2(false),Tcond3(false); Array : TL11[10](0),TL12[10](0),TL13[10](0),TL14[10](0),Tx1[10](0),TX11[10](0); Array : SD1[10](0),ST1[10](0),ED1[10](0),ET1[10](0),H1[10](0),L1[10](0); Array : TL21[10](0),TL22[10](0),TL23[10](0),TL24[10](0),Tx2[10](0); Array : SD2[10](0),ST2[10](0),ED2[10](0),ET2[10](0),H2[10](0),L2[10](0); Array : TL31[10](0),TL32[10](0),TL33[10](0),TL34[10](0),Tx3[10](0); Array : SD3[10](0),ST3[10](0),ED3[10](0),ET3[10](0),H3[10](0),L3[10](0); if time == 아시아종료 or (time > 아시아종료 and time[1] < 아시아종료) Then Tcond1 = false; if stime == 아시아시작 or (stime > 아시아시작 and stime[1] < 아시아시작) Then{ SD1[0] = sdate; ST1[0] = stime; H1[0] = H; L1[0] = L; Tcond1 = true; for cnt = 1 to 9{ SD1[cnt] = SD1[cnt-1][1]; ST1[cnt] = ST1[cnt-1][1]; ED1[cnt] = ED1[cnt-1][1]; ET1[cnt] = ET1[cnt-1][1]; H1[cnt] = H1[cnt-1][1]; L1[cnt] = L1[cnt-1][1]; } #전일 TL_Delete(TL11[1]); TL_Delete(TL12[1]); TL_Delete(TL13[1]); TL_Delete(TL14[1]); TL11[1] = TL_New(SD1[1],ST1[1],H1[1],ED1[1],ET1[1],H1[1]); TL12[1] = TL_New(SD1[1],ST1[1],L1[1],ED1[1],ET1[1],L1[1]); TL13[1] = TL_New(SD1[1],ST1[1],H1[1],SD1[1],ST1[1],L1[1]); TL14[1] = TL_New(ED1[1],ET1[1],H1[1],ED1[1],ET1[1],L1[1]); TL_SetColor(TL11[1],RED); TL_SetColor(TL12[1],RED); TL_SetColor(TL13[1],RED); TL_SetColor(TL14[1],RED); Text_Delete(tx1[1]); tx1[1] = Text_New(ED1[1],ET1[1],H1[1],NumToStr((H1[1]-L1[1])*소수점자리조정,0)); Text_SetColor(tx1[1],RED); Text_SetStyle(tx1[1],1,1); #전전일 TL_Delete(TL11[2]); TL_Delete(TL12[2]); TL_Delete(TL13[2]); TL_Delete(TL14[2]); TL11[2] = TL_New(SD1[2],ST1[2],H1[2],ED1[2],ET1[2],H1[2]); TL12[2] = TL_New(SD1[2],ST1[2],L1[2],ED1[2],ET1[2],L1[2]); TL13[2] = TL_New(SD1[2],ST1[2],H1[2],SD1[2],ST1[2],L1[2]); TL14[2] = TL_New(ED1[2],ET1[2],H1[2],ED1[2],ET1[2],L1[2]); TL_SetColor(TL11[2],RED); TL_SetColor(TL12[2],RED); TL_SetColor(TL13[2],RED); TL_SetColor(TL14[2],RED); Text_Delete(tx1[2]); tx1[2] = Text_New(ED1[2],ET1[2],H1[2],NumToStr((H1[2]-L1[2])*소수점자리조정,0)); Text_SetColor(tx1[2],RED); Text_SetStyle(tx1[2],1,1); Text_Delete(tx11[2]); tx11[2] = Text_New(ED1[2],ET1[2],H1[2],RIGHTStr("(-2일)",6)); Text_SetColor(tx11[2],RED); Text_SetStyle(tx11[2],3,1); } if Tcond1 == true Then{ ED1[0] = Sdate; ET1[0] = Stime; if H > H1[0] Then H1[0] = H; if L < L1[0] Then L1[0] = L; #당일 TL_Delete(TL11[0]); TL_Delete(TL12[0]); TL_Delete(TL13[0]); TL_Delete(TL14[0]); TL11[0] = TL_New(SD1[0],ST1[0],H1[0],ED1[0],ET1[0],H1[0]); TL12[0] = TL_New(SD1[0],ST1[0],L1[0],ED1[0],ET1[0],L1[0]); TL13[0] = TL_New(SD1[0],ST1[0],H1[0],SD1[0],ST1[0],L1[0]); TL14[0] = TL_New(ED1[0],ET1[0],H1[0],ED1[0],ET1[0],L1[0]); TL_SetColor(TL11[0],RED); TL_SetColor(TL12[0],RED); TL_SetColor(TL13[0],RED); TL_SetColor(TL14[0],RED); Text_Delete(tx1[0]); tx1[0] = Text_New(sdate,stime,H1[0],NumToStr((H1[0]-L1[0])*소수점자리조정,0)); Text_SetColor(tx1[0],RED); Text_SetStyle(tx1[0],1,1); } if time == 유럽종료 or (time > 유럽종료 and time[1] < 유럽종료) Then Tcond2 = false; if stime == 유럽시작 or (stime > 유럽시작 and stime[1] < 유럽시작) Then{ SD2[0] = sdate; ST2[0] = stime; H2[0] = H; L2[0] = L; Tcond2 = true; for cnt = 1 to 9{ SD2[cnt] = SD2[cnt-1][1]; ST2[cnt] = ST2[cnt-1][1]; ED2[cnt] = ED2[cnt-1][1]; ET2[cnt] = ET2[cnt-1][1]; H2[cnt] = H2[cnt-1][1]; L2[cnt] = L2[cnt-1][1]; } #전일 TL_Delete(TL21[1]); TL_Delete(TL22[1]); TL_Delete(TL23[1]); TL_Delete(TL24[1]); TL21[1] = TL_New(SD2[1],ST2[1],H2[1],ED2[1],ET2[1],H2[1]); TL22[1] = TL_New(SD2[1],ST2[1],L2[1],ED2[1],ET2[1],L2[1]); TL23[1] = TL_New(SD2[1],ST2[1],H2[1],SD2[1],ST2[1],L2[1]); TL24[1] = TL_New(ED2[1],ET2[1],H2[1],ED2[1],ET2[1],L2[1]); TL_SetColor(TL21[1],YELLOW); TL_SetColor(TL22[1],YELLOW); TL_SetColor(TL23[1],YELLOW); TL_SetColor(TL24[1],YELLOW); Text_Delete(tx2[1]); tx2[1] = Text_New(ED2[1],ET2[1],H2[1],NumToStr((H2[1]-L2[1])*소수점자리조정,0)); Text_SetColor(tx2[1],YELLOW); Text_SetStyle(tx2[1],1,1); #전전일 TL_Delete(TL21[2]); TL_Delete(TL22[2]); TL_Delete(TL23[2]); TL_Delete(TL24[2]); TL21[2] = TL_New(SD2[2],ST2[2],H2[2],ED2[2],ET2[2],H2[2]); TL22[2] = TL_New(SD2[2],ST2[2],L2[2],ED2[2],ET2[2],L2[2]); TL23[2] = TL_New(SD2[2],ST2[2],H2[2],SD2[2],ST2[2],L2[2]); TL24[2] = TL_New(ED2[2],ET2[2],H2[2],ED2[2],ET2[2],L2[2]); TL_SetColor(TL21[2],YELLOW); TL_SetColor(TL22[2],YELLOW); TL_SetColor(TL23[2],YELLOW); TL_SetColor(TL24[2],YELLOW); Text_Delete(tx2[2]); tx2[2] = Text_New(ED2[2],ET2[2],H2[2],NumToStr((H2[2]-L2[2])*소수점자리조정,0)); Text_SetColor(tx2[2],YELLOW); Text_SetStyle(tx2[2],1,1); } if Tcond2 == true Then{ ED2[0] = Sdate; ET2[0] = Stime; if H > H2[0] Then H2[0] = H; if L < L2[0] Then L2[0] = L; #당일 TL_Delete(TL21[0]); TL_Delete(TL22[0]); TL_Delete(TL23[0]); TL_Delete(TL24[0]); TL21[0] = TL_New(SD2[0],ST2[0],H2[0],ED2[0],ET2[0],H2[0]); TL22[0] = TL_New(SD2[0],ST2[0],L2[0],ED2[0],ET2[0],L2[0]); TL23[0] = TL_New(SD2[0],ST2[0],H2[0],SD2[0],ST2[0],L2[0]); TL24[0] = TL_New(ED2[0],ET2[0],H2[0],ED2[0],ET2[0],L2[0]); TL_SetColor(TL21[0],YELLOW); TL_SetColor(TL22[0],YELLOW); TL_SetColor(TL23[0],YELLOW); TL_SetColor(TL24[0],YELLOW); Text_Delete(tx2[0]); tx2[0] = Text_New(sdate,stime,H2[0],NumToStr((H2[0]-L2[0])*소수점자리조정,0)); Text_SetColor(tx2[0],YELLOW); Text_SetStyle(tx2[0],1,1); } if time == 미국종료 or (time > 미국종료 and time[1] < 미국종료) Then Tcond3 = false; if stime == 미국시작 or (stime > 미국시작 and stime[1] < 미국시작) Then{ SD3[0] = sdate; ST3[0] = stime; H3[0] = H; L3[0] = L; Tcond3 = true; for cnt = 1 to 9{ SD3[cnt] = SD3[cnt-1][1]; ST3[cnt] = ST3[cnt-1][1]; ED3[cnt] = ED3[cnt-1][1]; ET3[cnt] = ET3[cnt-1][1]; H3[cnt] = H3[cnt-1][1]; L3[cnt] = L3[cnt-1][1]; } #전일 TL_Delete(TL31[1]); TL_Delete(TL32[1]); TL_Delete(TL33[1]); TL_Delete(TL34[1]); TL31[1] = TL_New(SD3[1],ST3[1],H3[1],ED3[1],ET3[1],H3[1]); TL32[1] = TL_New(SD3[1],ST3[1],L3[1],ED3[1],ET3[1],L3[1]); TL33[1] = TL_New(SD3[1],ST3[1],H3[1],SD3[1],ST3[1],L3[1]); TL34[1] = TL_New(ED3[1],ET3[1],H3[1],ED3[1],ET3[1],L3[1]); TL_SetColor(TL31[1],BLUE); TL_SetColor(TL32[1],BLUE); TL_SetColor(TL33[1],BLUE); TL_SetColor(TL34[1],BLUE); Text_Delete(tx3[1]); tx3[1] = Text_New(ED3[1],ET3[1],H3[1],NumToStr((H3[1]-L3[1])*소수점자리조정,0)); Text_SetColor(tx3[1],BLUE); Text_SetStyle(tx3[1],1,1); #전전일 TL_Delete(TL31[2]); TL_Delete(TL32[2]); TL_Delete(TL33[2]); TL_Delete(TL34[2]); TL31[2] = TL_New(SD3[2],ST3[2],H3[2],ED3[2],ET3[2],H3[2]); TL32[2] = TL_New(SD3[2],ST3[2],L3[2],ED3[2],ET3[2],L3[2]); TL33[2] = TL_New(SD3[2],ST3[2],H3[2],SD3[2],ST3[2],L3[2]); TL34[2] = TL_New(ED3[2],ET3[2],H3[2],ED3[2],ET3[2],L3[2]); TL_SetColor(TL31[2],BLUE); TL_SetColor(TL32[2],BLUE); TL_SetColor(TL33[2],BLUE); TL_SetColor(TL34[2],BLUE); Text_Delete(tx3[2]); tx3[2] = Text_New(ED3[2],ET3[2],H3[2],NumToStr((H3[2]-L3[2])*소수점자리조정,0)); Text_SetColor(tx3[2],BLUE); Text_SetStyle(tx3[2],1,1); } if Tcond3 == true Then{ ED3[0] = Sdate; ET3[0] = Stime; if H > H3[0] Then H3[0] = H; if L < L3[0] Then L3[0] = L; #당일 TL_Delete(TL31[0]); TL_Delete(TL32[0]); TL_Delete(TL33[0]); TL_Delete(TL34[0]); TL31[0] = TL_New(SD3[0],ST3[0],H3[0],ED3[0],ET3[0],H3[0]); TL32[0] = TL_New(SD3[0],ST3[0],L3[0],ED3[0],ET3[0],L3[0]); TL33[0] = TL_New(SD3[0],ST3[0],H3[0],SD3[0],ST3[0],L3[0]); TL34[0] = TL_New(ED3[0],ET3[0],H3[0],ED3[0],ET3[0],L3[0]); TL_SetColor(TL31[0],BLUE); TL_SetColor(TL32[0],BLUE); TL_SetColor(TL33[0],BLUE); TL_SetColor(TL34[0],BLUE); Text_Delete(tx3[0]); tx3[0] = Text_New(sdate,stime,H3[0],NumToStr((H3[0]-L3[0])*소수점자리조정,0)); Text_SetColor(tx3[0],BLUE); Text_SetStyle(tx3[0],1,1); }
프로필 이미지
yes
2015-11-03
249
글번호 92017
지표
답변완료

다시 문의드립니다.

아래답변을 받았는데요, 5분봉에 적용해보니 매도신호가 하나도안뜹니다. 수정부탁드립니다. var : TF(0),cnt(0); Array : HH[10](0),LL[10](0); TF = TimeToMinutes(stime); if Bdate != bdate[1] or (Bdate == Bdate[1] and stime < 150000 and TF < TF[1]) Then{ HH[0] = H; LL[0] = L; for cnt = 1 to 9{ HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; if HH[2] > 0 and LL[2] > 0 Then{ if HH[0] > max(HH[1],HH[2]) Then buy(); if ll[0] < mIN(LL[1],LL[2]) Then sell(); }
프로필 이미지
해월정
2015-11-03
191
글번호 92015
시스템
답변완료

부탁드립니다

수고하십니다 선물 매수.매도수급지표선을 겹치는 수식 부탁드립니다
프로필 이미지
파생돌이
2015-11-03
208
글번호 92005
지표

파파리리 님에 의해서 삭제되었습니다.

프로필 이미지
파파리리
2015-11-03
2
글번호 91994
지표
답변완료

문의드립니다

안녕하세요 아래 식 에서 시작시간및 종료시간을 종목및 썸머타임에 관계없이 적용하고자합니다 현재 예스글로벌사용중인데 crude oil 같은종목은 시작시간이 썸머타임과 관련하여 변경되는것이 맞는것인가요?... 부탁드립니다. =============================================================================== input : af1(0.01),max1(0.1); input : S1(20),P1(53); var : para1(0),T1(0); var : Bcond1(false); var : Scond1(false); var : pre(0),daycnt(0); para1 = sar(af1,max1); if stime == 170000 or (stime > 170000 and stime[1] < 170000) Then pre = TotalTrades; if MarketPosition == 0 Then daycnt = TotalTrades-Pre; Else daycnt = (TotalTrades-Pre)+1; if stime >= 170000 or stime < 154000 Then{ if crossup(C,para1) Then{ Bcond1 = false; var1 = H; var2 = L; T1 = 1; } if CrossDown(C,para1) Then{ Scond1 = false; var1 = H; var2 = L; T1 = -1; } if T1 == 1 and T1[1] == 1 and Bcond1 == false and H >= var1[1]+PriceScale*1 Then Bcond1 = true; if T1 == -1 and T1[1] == -1 and Scond1 == false and L <= var2[1]-PriceScale*1 Then Scond1 = true; if T1 == 1 and Bcond1 == false Then buy("B1",AtStop,var1+PriceScale*1); if T1 == -1 and Scond1 == false Then sell("S1",AtStop,var2-PriceScale*1); if daycnt == 0 and crossup(c,var1) and c > para1 Then buy("B2"); if daycnt == 0 and CrossDown(c,var2) and c < para1 Then sell("S2"); } ============================================================================= 중략 ============================================================================ if stime == 154000 or (stime > 154000 and stime[1] < 154000) Then{ exitlong("bexit"); ExitShort("sexit"); }
프로필 이미지
베드로
2015-11-03
201
글번호 91993
시스템
답변완료

피보나치 수열에 대해서 문의 드립니다.

피보나치 수열을 0%(고점) 23.6%, 38.2%, 50%, 61.8%, 76.4% 100%(저점) 이 7가지를 각각 따로 변수를 지정 할 수 있도록 해주십시오. 제가 원하는 가격을 따로 각각 적을 수 있도록 해주시면 감사하겠습니다. 예를 들면 고점 과 저점을 설정하면 각 퍼센트를 자 동으로 설정 하는 것이 아니라 각각 따로 설정 하여 지표에 선이 그어 질 수 있도록 해주시면 감사하겠습니다. 많은 도움 주셔서 감사합니다.
프로필 이미지
원칙지킴이
2015-11-03
303
글번호 91989
지표
답변완료

문의 드립니다.

10^(LOG(고점)-(LOG(고점)-LOG(저점))*0.236) 10^(LOG(고점)-(LOG(고점)-LOG(저점))*0.382) 10^(LOG(고점)-(LOG(고점)-LOG(저점))*0.500) 10^(LOG(고점)-(LOG(고점)-LOG(저점))*0.618) 10^(LOG(고점)-(LOG(고점)-LOG(저점))*0.764) 우리나라 시간 기준으로 장이 시작되면 당일 고점이 선으로 이어지는 것이 아닌 고점을 새로 갱신하면 갱신한 고점 기준으로 선이 이어지게 해주시고 새로 갱신한 고점 밑에 고점은 연결이 진행되지 않게 적용해주십시오. 저점도 마찬 가지로 해주시면 감사하겠습니다. 또한 고점과 저점에 위의 엑셀 식을 적용한 피보나치 수열이 적용 될 수 있도록 해주십시오. 고점과 저점이 새로 갱신을 하면 자동으로 위의 식이 적용된 피보나치 수열이 자동으로 변하면서 진행 될 수 있도록 해주시면 감사하겠습니다. 다음날 우리나라 기준 장이 열렸을 때에도 그날 기준으로 위에 처럼 적용 될 수있게 해주시면 감사하겠습니다. 설명이 어려운것 같아 그림으로도 남깁니다 감사합니다.
프로필 이미지
원칙지킴이
2015-11-03
285
글번호 91988
지표