커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

지지저항선

지지저항선을 표시하고자합니다 선물챠트에서 일정한 가격을 입력하고 지지저항의 간격을 정해주면 지지선 몇개 저항선 몇개를 표시하고자 합니다 예를 들어 기즌준격 290.00을 입력하고 지지저항의 간격을 1.50으로 정하면 기준선 및 위아래에 몇개(정할수있음)의 선을 표시하고자 합니다. 위로 291.50, 293.00, 294.50 아래로 288.50, 287.00, 286.50 으로 표시돼도록 물론 기준선 및 저앙선, 지지선의 색깔을 구분하면 좋겠습니다 감사합니다
프로필 이미지
느림보
2020-07-19
1580
글번호 140787
사용자 함수
답변완료

수식어 부탁드립니다

var : entry(0); if bdate != bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if MarketPosition <= 0 and entry < 1 Then buy("b",atlimit,dayhigh-PriceScale*80); if MarketPosition == 1 Then exitlong("bx",atlimit,lowest(L,BarsSinceEntry)+PriceScale*50); if MarketPosition >= 0 and entry < 1 Then sell("s",atlimit,daylow+PriceScale*1350); if MarketPosition == -1 Then ExitShort("sx",atlimit,Highest(H,BarsSinceEntry)-PriceScale*60); if sdate != sdate[1] Then SetStopEndofday(55000); if bdate != bdate[1] Then SetStopEndofday(0); ---------------------------------- 수식어 추가입니다. 1. 손절 20틱 2. 23시 50분부터 buy, sell 진입신호금지 수식어입니다. 청산은 무관합니다.
프로필 이미지
푸른
2020-07-20
1338
글번호 140786
시스템
답변완료

수식 검토 요청합니다.

아래 수식은 수동으로 2가지 종목을 각각 매매후에 자리를 뜨고 자러 가는 사이에 본절 청산과 수익 추적 청산 하기 위한 수식입니다. 에러가 있는지 검토 요청드립니다. 수식이 문제가 없더라도 실전에서 문제가 없겠습니까? GetPositionOpenPL 과 GetpositionQuantity 은 호출을 얼마 시간단위로 호출하는 것인지요? 분봉이 완성될 때마다 호출되는 것인지요? GetPositionOpenPL 이 실제와 다를 때도 있습니까? 실제와 동일시하는 수식이 있으면 부탁드립니다. var: quantity1(0),quantity2(0),러셀원가(0),가솔린원가(0); var: 러셀이익(0),가솔린이익(0); var: PL1(0),PL2(0),T(0); var:러셀본전가(0), 가솔린본절가(0),러셀고가(0),가솔린고가(0), 러셀최고가(0),가솔린최고가(0); PL1=GetPositionOpenPL("RTUV20","7212383908"); //러셀 PL2=GetPositionOpenPL("RB020","7212383908"); // 가솔린 quantity1=GetpositionQuantity("RTUV20","7212383908");//러셀 보유수량 quantity2=GetpositionQuantity("RB020","7212383908");//가솔린 보유수량 IF quantity1==0 Then { 러셀원가 = PL1 ; 러셀이익=0 ; 러셀최고가=0; 러셀본전가=0 ; T=0 ; } IF quantity2==0 Then { 가솔린원가 = PL2 ; 가솔린이익=0; 가솔린최고가=0; 가솔린본절가=0; T=0 ; } IF quantity1>0 Then { 러셀이익 = PL1 -러셀원가 ; } IF quantity1>0 Then { 러셀이익 > 러셀이익[1] ; 러셀최고가=러셀이익 ; } IF quantity2>0 Then { 가솔린이익 = PL2 -가솔린원가 ; } IF quantity2>0 Then { 가솔린이익 >가솔린이익[1] ; 가솔린최고가 = 가솔린이익; } IF quantity1[1]==0 and quantity1>0 then { 러셀본전가 =c; } IF quantity2[1]==0 and quantity2>0 then { 가솔린본절가 =c; } // 러셀을 수동으로 매매하고 이익이 나서 이익을 시스템식으로 보전하려고 합니다. //러셀 매매후 이익이 나면 if quantity1>0 AND PL1 > 러셀원가 Then { 러셀이익 = PL1 - 러셀원가 ; T=1; } //가솔린 매매후 이익이 나면 if quantity2>0 AND PL2 > 가솔린원가 Then; { 가솔린이익 = PL2 - 가솔린원가 ; T=-1; } // 러셀 매수후 이익이 나서 본절가로 가격이 떨어지면 본절가 청산합니다. IF quantity1==1 and T==1 and 러셀이익 > pricescale*40 Then { Sell("bx1",AtStop,러셀본전가); // 러셀 본절가는 수동으로 넣어 줍니다.옆의 수식 맞습니까? 포지션이 매도이면 이 명령은 손으로 삭제합니다. T=0 ; // 러셀 매수후 이익이 많이 나서 최고값 대비 50%로 가격이 떨어지면 수익 청산합니다. if 러셀최고가 >= 러셀원가+pricescale*60 then sell("bx2",atstop,(러셀최고가- 러셀원가)*0.5 ); // 포지션이 매도이면 이 명령은 손으로 삭제합니다. T=0 ; } // 러셀 매도후 이익이 나서 본절가로 가격이 떨어지면 본절가 청산합니다. IF quantity1==1 and T==1 and 러셀이익 > pricescale*40 Then { Buy("sx1",AtStop,러셀본전가); // 러셀 본절가는 수동으로 넣어 주기도 합니다.옆의 수식 맞습니까? 포지션이 매수이면 이 명령은 손으로 삭제합니다. T=0 ; // 러셀 매도후 이익이 많이 나서 최고&#49342; 대비 50%로 가격이 덜어지면 수익 청산합니다. if 러셀최고가 >= 러셀원가*60 then Buy("sx2",atstop,(러셀최고가 - 러셀원가)*0.5 ); // 포지션이 매수이면 이 명령은 손으로 삭제합니다. T=0 ; } ////////////////////////////////////////////////////////// // 가솔린 매수후 이익이 나서 본절가로 가격이 떨어지면 본절가 청산합니다. IF quantity2==1 and T==-1 Then { Sell("bx11",AtStop,가솔린본절가); // 러셀 본절가는 수동으로 넣어 주기도 합니다..옆의 수식 맞습니까? 포지션이 매도이면 이 명령은 손으로 삭제합니다. T=0 ; // 가솔린 매수후 이익이 많이 나서 최고값 대비 50%로 가격이 떨어지면 수익 청산합니다. if highest(H,BarsSinceEntry) >= entryprice+pricescale*40 then sell("bx22",atstop,highest(H,BarsSinceEntry)-(highest(H,BarsSinceEntry)-entryprice)*0.5 ); // 포지션이 매도이면 이 명령은 손으로 삭제합니다. T=0 ; } // 가솔린 매도후 이익이 나서 본절가로 가격이 떨어지면 본절가 청산합니다. IF quantity1==1 and T==-1 Then { Buy("sx11",AtStop,가솔린본절가); // 러셀 본절가는 수동으로 넣어 줍니다.옆의 수식 맞습니까? 포지션이 매수이면 이 명령은 손으로 삭제합니다. T=0 ; // 가솔린 매도후 이익이 많이 나서 최고&#49342; 대비 50%로 가격이 덜어지면 수익 청산합니다. if highest(H,BarsSinceEntry) >= entryprice+pricescale*40 then Buy("sx22",atstop,lowest(L,BarsSinceEntry)+(entryprice-lowest(L,BarsSinceEntry))*0.5 ); // 포지션이 매수이면 이 명령은 손으로 삭제합니다. T=0 ; } MessageLog("quantity1= %.f " , quantity1 ); MessageLog("PL1= %.f " , PL1 );
프로필 이미지
종호
2020-07-19
1435
글번호 140785
시스템
답변완료

다음날 시가 청산

안녕하세요? 30분봉으로 시스템을 수행한다고 했을때, 숏포지션으로 유지중이다가 다음날 갭이 떠서 전날 마지막봉의 H를 일간gap이 넘게 되면 9시 시가에 청산하고 싶은데요. 로직을 어떻게 짜면 될까요?
프로필 이미지
롬롬7
2020-07-19
1482
글번호 140784
시스템
답변완료

안녕하세요..지표부탁드립니다..감사합니다.

3분봉차트에서 30분봉차트의 mACD 와 스톡캐스틱을 표현하고싶습니다.. 아래는 부봉에서 일봉으로 표현하는 지표인데 30분봉으로 변형하는법을 모르겠습니다. input : Period(12), Period1(5), Period2(5); var : count(0), highVal(0), lowVal(0), StoFastK(0), StoK(0), StoD(0); var : Ep(0), EP1(0), JISU(0), DINDEX(0), PreStoK(0), PreStoD(0); #### 특정 구간의 고가 [highest(H,Period)] #### highVal = dayhigh(0); for count = 0 to Period-1 { if dayHigh(count) > highVal then highVal = dayhigh(count); } #### 특정 구간의 저가 [lowest(L,Period)] #### lowVal = daylow(0); for count = 0 to Period-1 { if dayLow(count) < lowVal then lowVal = dayLow(count); } #### Fast StochasticsK #### StoFastK = (C-lowVal)/(highVal-lowVal)*100; #### Slow StochasticsK #### Ep = 2/(Period1+1); if date != date[1] then { DINDEX = DINDEX + 1; PreStoK = StoK[1]; } if DINDEX <= 1 then StoK = StoFastK ; else StoK = StoFastK * EP + PreStoK * (1-EP); #### Slow StochasticsD #### Ep1 = 2/(Period2+1); if date != date[1] then { DINDEX = DINDEX + 1; PreStoD = StoD[1]; } if DINDEX <= 1 then StoD = StoK ; else StoD = StoK * EP1 + PreStoD * (1-EP1); plot1(StoK); plot2(StoD);
프로필 이미지
미우
2020-07-19
1538
글번호 140783
지표
답변완료

문의드립니다

var1 = dayhigh; var2 = daylow; var3 = var1-var2; plot1(var1-var3*0.236); plot2(var1-var3*0.500); plot3(var1-var3*0.764); 0.263상승돌파시레드색(양봉15분봉) 신호가 나오면시가&#44704;지기전까진매수신호유지 시가가무너지면블루색 0.764하락돌파시블루색(음봉15분봉) 신호가 나오면 시가&#44704;지기전까진매도신호유지 시가상승돌파하면레드색 씨스템식 부탁드립니다~~미리감사드립니다
프로필 이미지
유선
2020-07-19
1605
글번호 140782
시스템
답변완료

부탁 드립니다.

도움에 감사 드립니다. 수식2)는 수식1)을 타주기(분봉)용으로 작성 해주신 것입니다. A)질문수식1)을 타주기(분봉)으로 부탁 드립니다. B)질문수식1)을 타주기(일봉)으로 부탁 드립니다. 미리 경배로 감사 인사 올립니다. //수식1) input : p1(60); var1 = accumn(iff(C>O,C*V,0),p1); var2 = var1/accumn(iff(C>O,1,0),p1); //질문수식1) input : p1(60),sig(20); var1 = accumn(iff(C>O,C*V,0),p1); var2 = var1/accumn(iff(C>O,1,0),p1); var11 = accumn(iff(C<O,C*V,0),p1); var12 = var1/accumn(iff(C<O,1,0),p1); var21=var2-var12; var31=ma(var21,sig); //수식2) input : ntime(10),P1(60); var : S1(0),D1(0),TM(0),TF(0),cnt(0); Array : OO[100](0),CC[100](0),VV[100](0); if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; } if D1 > 0 then { if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%ntime; if Bdate != Bdate[1] or (Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or (Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or (Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then { OO[0] = O; VV[0] = V; for cnt = 1 to 99 { OO[cnt] = OO[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; VV[cnt] = VV[cnt-1][1]; } } CC[0] = C; VV[0] = VV[0]+V; if VV[P1-1] > 0 then { var1 = 0; value1 = 0; for cnt = 0 to P1-1 { if CC[cnt] > OO[cnt] then { var1 = var1 + (CC[cnt]*VV[cnt]); value1 = value1 + 1; } } var2 = var1/value1; plot1(var2); } }
프로필 이미지
뮬리
2020-07-19
1504
글번호 140781
지표
답변완료

참조데이터 이용수식

분봉차트를 사용하고 있고, 동일분봉의 참조data3(=거래량 데이터)차트를 이용한 시스템식을 만들려고 합니다. 참조data3의 종가가 1130~1400시까지의 고점을 넘고 15:00 이전이면 매수하는 식을 만들려 하는데 수식검증 시 오류가 납니다. 뭐가 잘못됐는지 검토해 주시면 감사하겠습니다. <작성해 본 식> var : value1(0); value1=data3(timehigh(113000,140000)); if data3(crossup(data3(c),value1) and stime< 150000 Then Buy();
프로필 이미지
theogo66
2020-07-19
1581
글번호 140780
시스템
답변완료

화면 표기

안녕하세요? 지표식을 사용중인데요. Text_New 로 표기한거라 차트에만 표기되고 하단에 지표 부분에는 공백으로 나오는데요. 이런경우에 차트 하단 지표칸을 안나오게 할 수는 없나요? 거래량이나 다른 지표들도 보는게 있는데 이게 자꾸 공백으로 나오는게 차지해버려서 불편하네요. 상태저장해서 계속 같은 설정으로 유지할 수 있는 옵션도 있다면 소개 부탁드려요.
프로필 이미지
롬롬7
2020-07-19
1595
글번호 140779
지표
답변완료

지표문의

안녕하세요 주식 09:00-09:15에서 고점+저점/2 되는 수식 좀 부탁드립니다 감사합니다
프로필 이미지
장군777
2020-07-18
1732
글번호 140778
지표