커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

포지션 주문 수식 문의 드립니다.

1) 단기 이평선이 장기 이평선을 상향 돌파시 최초 매수 포지션 진입하고, 2) 최초 진입가에서 ATR(12일 평균) / 2 값 만큼 상향 돌파 시, "ATR(12일 평균) / 2"에 해당 하는 가격으로 추가 진입 하고, 3) 단기 이평선이 장기 이평선을 하향 돌파시 포지션 전량 청산 하는 전략입니다. 1) 과 3)은 잘 되는거 같은데, 2) 부분이 잘 안되는거 같아서 문의 드립니다. 제가 사용한 수식은 다음과 같습니다. 그리고 Yes language에서 계산되는 ATR 값은 %로 나오는지 아니면 가격으로 나오는지 궁금합니다. 감사합니다. ================================================================== Input : shortPeriod(10), longPeriod(200); Var1 = ema(C , shortPeriod); Var2 = ema(C , longPeriod); Var3 = ATR(12)/2 ; # 매수 If Var1 > Var2 and CrossUP(var1, var2) Then { Buy("Buy1", OnClose, DEF, 1); } # 불타기 If MarketPosition >= 1 and Var1 > Var2 Then { if High > EntryPrice(1) + Var3 Then Buy("Add",AtStop,EntryPrice(1) + Var3 , 1); } # 매수청산 If CrossDown(var1, var2) Then { ExitLong(); }
프로필 이미지
leblanc
2020-12-30
631
글번호 145002
시스템

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

프로필 이미지
러블리
2020-12-30
175
글번호 145001
지표
답변완료

수정부탁드립니다

안녕하세요...글번호70217에 64번30분종가라인수정부탁드립니다. 현재수식 9시~9/30분종가라인은 9/31~10시까지 9/30~10시종가라인은 10시~10/30분까지 현재의수식을 아래의수식으로 수정부탁드립니다. 수정수식 9시~9/30분종가라인은 9/31~10/30까지 9/31~10/00시종가라인은10/00~11/00까지 이런식으로장종료까지 그려지게요. 수고하세요...꾸벅
프로필 이미지
보인다
2020-12-30
916
글번호 145000
지표
답변완료

수식 의뢰 드립니다

안녕하세요! 아래 키움 수식을 예스로 변경 부탁드립니다! 항상 감사드립니다! 수식1 > 거래량 pvi(c)+nvi(c) 수식2 > 평균 avg(pvi(c),period)+avg(nvi(c),period) 수식3 > 표시 a=pvi(c)+nvi(c); b=avg(pvi(c),period)+avg(nvi(c),period); min(a,b) 지표설정조건> period 25 라인설정> 거래량 유형:선 / 너비:1pt / 과열 기준값: 1 평균 유형:선 / 너비:1pt / 과열 기준값: 1 표시 유형:선 / 너비:1pt / 과열 기준값: 1
프로필 이미지
qha71
2020-12-30
880
글번호 144999
지표
답변완료

지표 수식좀 부탁 드립니다.(인사)

* 지난해 수고 많으셨습니다. * 새해에도 건강 하고 복 많이 받으십시요. * 혹시 LRL선으로 스톡 지수 처럼 표현이 가능 할까요? 기준: 100봉 의 최대값 과 최소값 기준 다른 수치를 가지고 스톡 지수 처럼 표현하는 방법좀 부탁 드립니다. * 지나한해 많은 도움에 고개 숙여 감사 드립니다.
프로필 이미지
요타
2020-12-30
702
글번호 144995
지표
답변완료

동일지표 내의 여러개의 출력물 적용 방법

항상 신속하고 친절하게 답변을 주셔서 많은 도움을 받고 있습니다. 감사합니다. 현재 상당이 큰(480라인 정도) 크기의 지표 속에 출력(PLOT)할 것이 20여개 될 경우 동일한 지표를 여러번 적용(불러오기)해서 각각 다른 행에 20개의 출력물을 배치해서 보고 있습니다. 그런데 최근에 시세가 터질때 차트가 자주 멈춰서 위와 같이 하는 것이 혹시 메모리에 부담을 주는지 궁금합니다. 지표를 20개 만들어서(기본적인 산출 데이터등은 중복) 각각 다른 지표명으로 각각 다른 행에 배치하는 경우 메모리를 덜 사용하게되는 지 궁금합니다. 핵심은 동일한 지표를 20번 불러올 경우(지표의 적용)에도 (20개의 출력물을 보고 있더라도) 동일한 지표이므로 지표내의 각종 계산 등은 한번만 하는지 각각의 출력물 숫자대로 20번 하게되는 되는지 여부 입니다. 연말 연시에 건강하하시고 댁내에 주님의 은총이 가득하시길 기원합니다.
프로필 이미지
스퍼트시커
2020-12-30
726
글번호 144994
지표

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

프로필 이미지
러블리
2020-12-30
205
글번호 144993
지표
답변완료

시스템질문

아래수식에서 매수1과 매수2와 매수3의 조건이 2개이상 동시 만족되는경우 같은 가격에서 매수가 중복으로 이뤄지는데 한번만 매수되게 할수는 없을까요? 매수1과 매수2 값이 중복된경우 매수2가 매수되게,,, 매수1과 매수3 값이 중복된경우 매수3가 매수되게,,, 매수2와 매수3 값이 중복된경우 매수3가 매수되게,,, 매수1,2,3가 모두 중복된경우 매수3가 매수되게,,, INPUT : 매수(0), 매도조건(1); var : cond(False),LP(0); var1 = ma(C,3); var2 = ma(C,5); var3 = ma(C,10); var4 = ma(C,60); if C < Var4 and CrossDown(c,var1) and cond == False Then { if MarketPosition == 0 or (MarketPosition == 1 and C < LP and Condition1 == False) Then Buy("매수1"); } if C < var4 and CrossDown(c,var2) and cond == False Then { if MarketPosition == 0 or (MarketPosition == 1 and C < LP and Condition1 == False) Then Buy("매수2"); } if C < Var4 and CrossDown(c,var3) and cond == False Then { if MarketPosition == 0 or (MarketPosition == 1 and C < LP and Condition1 == False) Then Buy("매수3"); } if MarketPosition == 1 Then { if 매수 == 1 Then Cond = true; if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "매수1" Then { LP = LatestEntryPrice(0); Condition1 = true; } if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "매수2" Then { LP = LatestEntryPrice(0); Condition2 = true; } if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "매수3" Then { LP = LatestEntryPrice(0); Condition3 = true; } if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "매수4" Then { LP = LatestEntryPrice(0); Condition4 = true; } if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "매수5" Then { LP = LatestEntryPrice(0); Condition5 = true; } if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "매수6" Then { LP = LatestEntryPrice(0); Condition6 = true; } if Condition3 == true Then { if Condition4 == False Then Buy("매수4",AtLimit,LP*0.97); if Condition4 == true and Condition5 == False Then Buy("매수5",AtLimit,LP*0.95); if Condition4 == true and Condition5 == true and Condition6 == False Then Buy("매수6",AtLimit,LP*0.90); } if 매도조건 == 1 Then { ExitLong("bx1",AtLimit,AvgEntryPrice*1.05,"",Floor(MaxContracts*0.2),1); ExitLong("bx2",AtLimit,AvgEntryPrice*1.08,"",Floor(MaxContracts*0.5),1); ExitLong("bx3",AtLimit,AvgEntryPrice*1.10); } if 매도조건 == 2 Then { ExitLong("bx",AtLimit,AvgEntryPrice*1.15); } } Else { Condition1 = False; Condition2 = False; Condition3 = False; }
프로필 이미지
쭈니오빠
2020-12-30
543
글번호 144992
시스템
답변완료

지표식 문의

안녕하세요? 예상과 달리, 잘 작동 안하는 이유가 궁금합니다. 감사합니다.
프로필 이미지
에구머니
2020-12-30
688
글번호 144991
지표
답변완료

안녕하세요! 문의드립니다~ 꼭좀 답변 부탁드립니다~

안녕하세요! 수식을 작성하고 시뮬을 돌리다가 문제점이 몇몇 발생되어 이렇게 문의를 드리게 됐습니다~ 현재 피라미딩을 구현하기위해 (1번 ~ 4번) 매 회 매수 서식에 별도의 카운트변수를 선언하여 +1을 하고 있습니다. 이때 if문을 통과했으니 buy주문이 들어가고 +1이 됐을텐데 카운트만 늘어나고 매수는 안되어 있어서 간혹 회차를 넘어가서 1번 2번 이렇게가 아닌 1번 3번 이런식으로 매수가 되어 있더라구요. 크로스업 또는 다운함수를 사용해서 그런가해서 C[1] < 기준선 and C > 기준선 이렇게 넣었는데도 결과는 같았습니다. 주문예약어로 OnClose, AtMarket, AtStop, AtLimit 전부 다 사용해봤는데도 안되더라구요. (AtStop, AtLimit의 경우는 c+PriceScale*3 이렇게 작성했습니다.) 시장가로 매수는 프로그래밍상 어려울거라 생각되는데 무조건 매수가 되게는 보장 못 하지만 그래도 최대한 가장 무조건에 가까운 방법은 OnClose 인지 궁금합니다. 이게 아니면 if 문 내에 카운트를 세는 함수를 +1을 하는게 아니라 if문이 끝나면 바로 아래에 if latestEntryName == 매수1(또는 매수2 ...) then Cnt = Cnt + 1; 이런식으로 작성을 해야하는지 제 머리로는 이게 한계네요ㅠㅠ 혹시 위의 수식과 같은 최근매수 또는 몇번째 매수했을때의 매수명이 아닌 매수명만으로 포지션이 있는지 없는지를 확인하는 방법이 있을까요? 도움말을 암만 찾아봐도 이거에 대해선 답을 얻진 못했습니다. 슬리피지보다 더 큰 오류를 범하는게 정해진 수식이 진행 중에 매수 또는 매도가 안되었을 때 진짜 답이 없더라구요 ㅠㅠ 사람이 손매매해버리면 또 복잡해지고 ㅠㅠ 슬리피지가 얼마든 상관없습니다 그냥 매수할타이밍에 매수를 무조건 그리고 매도할 타이밍에 매도를 무조건 할 수 있도록 도움 부탁드립니다 ㅠㅠ 그리고 간혹 ETF 상품으로 시뮬을 돌릴때 1분봉기준으로 차트상에 봉이 없다던지 메시지박스로 디버깅을할때 동일 시간이 두줄이 나온다던지 이런 오류가 있던데 실 매매에서는 이런일이 발생되는일은 없겠죠? (예) 차트 상에서 09:01 봉 다음 09:03 으로 보여짐 -> 09:02 봉이 안보임 메시지 박스에서 2020.01.09.09:01 다음 줄이 동일한 2020.01.09.09:01 이고 그 다음줄이 2020.01.09.09:03 으로 보여짐 마지막으로 차트를 실행했을때 속성에서 "수정주가"라는 게 있는데 이는 어떤 역활을 하는 옵션인건지 궁금하고 체크를 하고 안하고 차이가 궁금합니다!
프로필 이미지
열심청년
2020-12-30
937
글번호 144990
시스템