커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

문의 드립니다.

아래 내용을 강조나 시스템에서 사용할 때는 어떤 식으로 표현해야 하나요? 안녕하세요 예스스탁입니다. 후행스팬은 종가를 과거 N봉전으로 이동한 선입니다. FixPlotShift함수로 이동하시면 됩니다. Plot1(C,"종가"); FixPlotShift(1,-26); 즐거운 하루되세요 > alltoone 님이 쓴 글입니다. > 제목 : 질문 드립니다. > 일목균형표 지표를 차트에 표현할 때, 선행스팬은 [26]으로 표현할 수 있는데, 후행스팬은 어떻게 표현할 방법이 없나요? 지표 속성 - 차트 표시 말구요, 선행스팬처럼 수식에서 알고 싶습니다. 답변 감사드립니다.
프로필 이미지
alltoone
2020-11-24
2141
글번호 144158
강조
답변완료

69922번 질문에 대한 답변 주셨는데.. 수식 적용이 안되네요

69922번 질문에 대한 답변을 올려 주셨는데 수정해 주신 수식을 적용해보니 신호가 발생되지 않습니다 확인 부탁 드립니다.
프로필 이미지
불기둥짱
2020-11-24
589
글번호 144157
지표
답변완료

일봉차트에서 월봉 시가, 종가, 저가, 고가 표현

월봉 관련 Q&A를 모두 살펴봤는데, 일봉차트에서 시가, 저가, 고가를 그리는 것은 잘 참고 하고 있습니다. 그런데 월봉 종가를 그리는 것은 올라와 있지 않아서 문의드립니다~
프로필 이미지
허츠바
2020-11-24
898
글번호 144156
지표
답변완료

매매금액 고정시 설정창의 수량

안녕하세요 고생이 많으십니다 수식작성시 진입수량을 금액/C 등으로 고정시킬 경우 시스템트레이딩 설정창의 비용/수량 설정은 무시되는 것인지 궁금합니다. 답변 부탁드립니다 감사합니다.
프로필 이미지
매력의도가니
2020-11-24
543
글번호 144155
시스템
답변완료

수식 수정 부탁합니다.

아래와 같이 9시부터 매매 시작해서 23시 55분봉 종가에서 청산하는 수식을 9시부터 매매해서 23시 55분 전까지만 진입 허용하고, 청산은 다음날 5시에 하는 식으로 변경 부탁합니다. input : starttime(090000),endtime(235500); var : Tcond(false); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; } if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if Tcond == true then {
프로필 이미지
란돌
2020-11-24
420
글번호 144154
시스템
답변완료

국내 주식 수식 보완좀 부탁드릴께요~~

국내주식입니다. (삼성전자) 문의:차트설정을 data1로 일봉으로 설정하면 되나요? 아니면 분봉으로 설정해야되나요? 아니면 같은 종목을 data1(10분봉) 과 data2(일봉) 로 구분해야할까요? 알려주시면 감사하겠습니다. 매수 조건 ( 누적 매수 ) * 오후 3시 10분에 아래조건에 해당하는 상황에 맞는 조건에 매수 진입 1. MFI(14) < 30 일때 10만원 진입 2. MFI(14) < 20 일때 20만원 진입 4. MFI(14) < 10 일때 30만원 진입 5. RSI(14) < 30 일때 10만원 진입 6. RSI(14) < 20 일때 20만원 진입 7. RSI(14) < 10 일때 30만원 진입 예를들어 오후 3시 10분에 MFI(14)< 15 이면서 RSI(14)< 25 이라면 20만원+10만원 총 30만원 매수 진행 입니다. 매수 청산 조건 * 오전 9시 10분에 아래조건에 해당하는 조건시 분할매도( 동일금액 25%씩 4일에 걸쳐 청산) 1. MFI(14) > 80 또는 RSI(14) > 70 일때 ================================================================================ 아래수식으로 잘 활용하고 있습니다. 그런데 개선점을 발견했습니다. 매도 조건 발생시 보유분의 일정분량만큼 분할매도로 청산하는 수식인데요... 분할매도되는 조건에서는 신규 매수가 않되게 수식 보정 부탁드리겠습니다 아래수식입니다. ============================================================================== input : 시작일(19001107); input : 일봉RSI기간(30); input : 일봉RSI값1(52),일봉RSI값2(36),일봉RSI값3(30); input : 최대투자금액(500); input : 진입금액1(5); input : 진입금액2(15); input : 진입금액3(20); input : 진입금액4(25); input : 진입금액5(30); input : 진입금액6(35); input : 진입금액7(40); input : 진입금액8(50); input : 진입금액9(60); input : 진입금액10(70); input : 이차진입금액(100); input : 삼차진입금액(200); input : MFI기간(15),MFI값(90); input : 심리도기간(15),심리도값(80); input : 분할매도횟수(50); input : 분할매도퍼센트(2); input : 청산수익률(4); var : mav(0,data2),MM(0,Data3),SS(0,Data3); var : MMM(0,Data2),SSS(0,Data2),Xcnt(0,Data2),Xvol(0,data1); MM = Data3(mfi(MFI기간)); SS = Data3(Simrido(심리도기간)); MMM = Data2(mfi(MFI기간)); SSS = Data2(Simrido(심리도기간)); var : vol(0); var : RSI2(0,Data2); RSI2 = Data2(RSI(일봉RSI기간)); if Data1(sDate) >= 시작일 Then { if MarketPosition == 0 or (MarketPosition == 1 and AvgEntryPrice*CurrentContracts < 최대투자금액*10000 ) Then { if data1(sTime == 93000 or sTime == 120000 ) Then # or sTime == 123000 { if Data2(RSI2 > 일봉RSI값1) Then { if MarketPosition == 0 or (MarketPosition == 1 and C >= AvgEntryPrice*0.98) Then vol = Floor(진입금액1*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.98 and C >= AvgEntryPrice*0.96 Then vol = Floor(진입금액2*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.96 and C >= AvgEntryPrice*0.94 Then vol = Floor(진입금액3*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.94 and C >= AvgEntryPrice*0.92 Then vol = Floor(진입금액4*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.92 and C >= AvgEntryPrice*0.90 Then vol = Floor(진입금액5*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.90 and C >= AvgEntryPrice*0.88 Then vol = Floor(진입금액6*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.88 and C >= AvgEntryPrice*0.86 Then vol = Floor(진입금액7*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.86 and C >= AvgEntryPrice*0.84 Then vol = Floor(진입금액8*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.84 and C >= AvgEntryPrice*0.82 Then vol = Floor(진입금액9*10000/c); if MarketPosition == 1 and C < AvgEntryPrice*0.82 and C >= AvgEntryPrice*0.80 Then vol = Floor(진입금액10*10000/c); Buy("불타기매매1",OnClose,DEf,vol); } if Data2(RSI2 < 일봉RSI값2 and RSI2 > 일봉RSI값3 ) Then { Buy("하락과도매매1",OnClose,DEf,Floor(이차진입금액*10000/c)); } if Data2(RSI2 < 일봉RSI값3) Then { Buy("폭락과도매매1",OnClose,DEf,Floor(삼차진입금액*10000/c)); } } } } SetStopProfittarget(청산수익률,PercentStop); if MM > MFI값 or SS > 심리도값 or MMM > MFI값 or SSS > 심리도값 Then { xcnt = xcnt+1; if Xcnt <= (분할매도횟수-1) Then Xvol = Floor(MaxContracts*분할매도퍼센트/100); else Xvol = CurrentContracts; if Xcnt <= 분할매도횟수 Then exitlong("청산",atlimit,C,"",Xvol,2); } Else xcnt = 0;
프로필 이미지
이형지
2020-11-29
553
글번호 144153
시스템

양치기 님에 의해서 삭제되었습니다.

프로필 이미지
양치기
2020-11-24
15
글번호 144152
시스템
답변완료

문의

ATR 지표를 캔들차트에 넣고 싶습니다. ATR값의 3배 정도의 밴드형태로 그려 넣고 싶습니다.
프로필 이미지
엉덩공주
2020-11-23
671
글번호 144150
지표
답변완료

수정 부탁드립니다.

안녕하세요? 잘 안되는 부분 두가지가 있어서 도움요청 드립니다. 1) (진입음봉,진입양봉 은 외부변수로 지정한틱수 그대로 인식하고, 전봉음봉과 전봉양봉 은 외부변수로 지정한 틱수 보다 클떄) 이 조건이 충족되었을때 진입 신호로 인식되었 으면 좋겠습니다. 2) 짧은지식으로 이렇게 저렇게 수식을 건드려보았지만, 가장고치고 싶은부분이 재진입 부 분입니다. 재진입은 한번만 되었으면좋겠는데, 반복이 되고있습니다. 재진입 신호가 나온후 설정해놓은 익절/손절이 될때까지 추가로 재진입은 안이루어지게 하고싶습니다. 감사합니다. input : 전봉음봉(5),진입음봉(5); input : 전봉양봉(5),진입양봉(5); input : p1(5),p2(20); input : entrycnt(3),profit(50),loss(50); var1 = ma(c,p1); var2 = ma(c,p2); if MarketPosition == 0 and var1 > Var2 and C <= O-진입음봉*PriceScale and C[1] == O[1]-전봉음봉*PriceScale then sell("s"); if MarketPosition == 0 and var1 < Var2 and C >= O+진입양봉*PriceScale and C[1] == O[1]+전봉양봉*PriceScale then buy("b"); if MarketPosition == -1 and BarsSinceEntry <= 3 and C > O Then Buy("sb"); if MarketPosition == 1 and BarsSinceEntry <= 3 and C < O Then Sell("bs"); SetStopProfittarget(PriceScale*profit,PointStop); SetStopLoss(PriceScale*loss,PointStop);
프로필 이미지
대구어린울프
2020-11-23
753
글번호 144149
시스템
답변완료

재문의 드립니다.

수고 하십니다. 죄송하지만 다시 한번 문의 드립니다. 수식작성 해주신것은 글과 맞지만 저가 설명을 잘못 했습니다. 69936번 수식작성 재문의 드립니다. *. 고점 발생후 value2(0.618) 아래저점중 작은 저점을 변수 a1의 저장입니다. 첨부된 그림을 보시면 검정색이 value2 입니다. value2 아래 저점 두개 11976 과 11962.50 중 작은 값인 11962.50 을 변수 a1에 저장입니다. 그이후 고점갱신시 녹색부분인 a1[1]을 라인 출력 하는 수식입니다. 반대쪽인 value3 도 부탁드립니다. 파동의 고점중에 높은 값을 b1에 저장입니다. 감사합니다. 기존 69936번 수식입니다. var : a1(0),a2(0),a3(0); var : b1(0),b2(0),b3(0); value1 = DayHigh; value2 = daylow+(DayHigh-DayLow)*0.618; value3 = daylow+(DayHigh-DayLow)*0.382; value4 = daylow; if Bdate != Bdate[1] Then { a1 = 0; a2 = Index; a3 = 0; b1 = 0; b2 = Index; b3 = 0; } Else { if h > DayHigh(0)[1] Then { a1 = 0; a2 = Index; b3 = 0; if a1[1] > 0 Then a3 = a1[1]; } if l < DayLow(0)[1] Then { b1 = 0; b2 = Index; a3 = 0; if b1[1] > 0 Then b3 = b1[1]; } } if a1 == 0 and S == 1 and S != S[1] and 저[1,2] > a2 and 저[1,1] < value2[Index-저[1,2]] and 저[1,1] > value4[Index-저[1,2]] Then a1 = 저[1,1]; if b1 == 0 and S == -1 and S != S[1] and 고[1,2] > b2 and 고[1,1] > value3[Index-고[1,2]] and 고[1,1] < value1[Index-고[1,2]] Then b1 = 고[1,1]; if a3 > 0 then Plot1(a3); if b3 > 0 then Plot2(b3);
프로필 이미지
상중하
2020-11-23
729
글번호 144144
지표