커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

문의

예스트레이더에 BREATH TRUST 지표가 있는지 문의 드립니다. 없다면 수식을 부탁드립니다. 감사합니다.
프로필 이미지
nicebs
2024-03-12
597
글번호 177403
지표

고성 님에 의해서 삭제되었습니다.

프로필 이미지
고성
2024-03-12
19
글번호 177399
지표
답변완료

종목검색식 요청드립니다.

안녕하세요? 1. 키움수식이 아래와 같은데 아래신호가 발생하는 종목을 검색하는 검색식 2. 아래 신호가 나온 이후에 캔들이 지수 20이평 아래에 머물고 있다가 위로 돌파하는 종목검색식을 만들려고 합니다. 또한 이 검색식은 최근 아래 수식신호가 발생한 날짜 기준으로 20이평을 아래에서 위로 돌파할때 마다 종목이 검색되게 만들고 싶습니다. 위 두 종목검색식을 만들기 위해 전문가님의 도움이 필요해서 이렇게 요청드립니다. 오늘도 좋은하루 되세요^^ 항상 많이 도와주셔셔 정말 정말 감사드립니다. * 수식 A=(highest(high,shortPeriod)+lowest(low,shortPeriod))/2; B=shift((highest(high,midPeriod)+lowest(low,midPeriod))/2,-midPeriod+1); Crossup(B, A)
프로필 이미지
onlypsn
2024-03-12
963
글번호 177397
종목검색
답변완료

문의드립니다

안녕하세요.... n봉에서 종가 20일선 50일선 돌파한후 n봉부터 1 봉까지 당일 시가대비 고가 10%이상 되는 봉 한나도 없고 0봉에서 첫음으로 당일 시가 대비 고가 10%이상 올라간 종목 검색식 부탁으립니다. 좋는 하루 되세요...감사합니다.
프로필 이미지
약수삼천
2024-03-12
757
글번호 177396
검색

빌더 님에 의해서 삭제되었습니다.

프로필 이미지
빌더
2024-03-11
1
글번호 177394
지표
답변완료

이렇게 데이터 넣는법

올만에하니 까먹어서 질문
프로필 이미지
닌자부엉이
2024-03-11
930
글번호 177393
지표
답변완료

수정부탁드립니다.

안녕하세요 아래식을 수정부탁드립니다. 삼각가중과 전환선이 크로스 할때 매수,매도인데 조건을 추가했으면 합니다. 조건은 1.기준선과 전환선이 크로스 하거나 삼각가중20과 전환선9 가 크로스할때 먼저나오는 신호를 적용하고 2.기준선 26 위에 있을때 전환선 9와 삼각가중 20 이 크로스할때 매수신호만 기준선 26 아래에 있을때 전환선 9와 삼각가중 20 이크로스할때 매도신호만 수정부탁드립니다. ( 전환선,기준선,삼각가중 수치는 변수처리 부탁드립니다) 고맙습니다
프로필 이미지
라몬
2024-03-11
672
글번호 177392
시스템
답변완료

시스템식 요청드립니다.

안녕하세요 어제 시스템식 요청했던 사람입니다. 말씀해준신대로 수량옵션에서 1로 적용했더니 동일시간에는 동시에 수량이 빠지는게 없어졌는데 추후에 말씀해주신 문제점도 그대로 발생하게 되었습니다. ((다음봉에서 latestEntryPrice*1.05보다 큰 시세가 있으면 해당 청산이 또 발생하게 됩니다. 해당 청산식이 봉완성시 if조건이 만족하고 다음봉에서 atlimit 가격조건을 충족만 하면 발생하기 때문입니다)) 해당 문제를 해결하기 위해서 "진입명"도 넣고 해봤는데, 제가 원하는 식은 아예 나오질 않더라구요 혹시 아래의 문제를 해결할 수 있는 방법은 없을까요??? 그리고 두번째 문제점은 위의 그림을 보시면 전고점 돌파했을때 매수가 들어가는 부분이 있는데 갭상으로 전고점을 돌파하면서, 10% 익절 매도청산까지 나갔을 경우에 돌파매수가 안됩니다. 여러가지 방식으로 이것저것 넣어봤지만 안되는데, 혹시 해결할수 있는 방법이 있을까요? --------------------------------------------------------------------------------------------------------- 안녕하세요 예스스탁입니다. 현재식에서 수량옵션 1로 하시면 동일날짜에 30주가 청산신호가 나오게 되지만 타점에서 해당 수량이 빠지게 됩니다. 타점에서 진입된 수량이 30주가 안되면 다음진입신호에서 나머지수량이 차감되게 됩니다. 청산신호는 진입명을 지정하지 않으면 먼저 나온신호에서 해당 수량을 차감해 청산하게 됩니다. 또한 다른 문제도 있는데 다음봉에서 latestEntryPrice*1.05보다 큰 시세가 있으면 해당 청산이 또 발생하게 됩니다. 해당 청산식이 봉완성시 if조건이 만족하고 다음봉에서 atlimit 가격조건을 충족만 하면 발생하기 때문입니다. 즐거운 하루되세요 > 맴맴잉 님이 쓴 글입니다. > 제목 : Re : Re : 시스템식 요청드립니다. > 오호~~~ 감사합니다. ExitLong("명칭",신호타입,신호가격,"진입명",수량,수량옵션); 에서 수량옵션을 1로 수정하면 동일날짜에 "타점"과 "타점1"에서 합쳐서 30주를 청산하게 되는게 맞는건가요?? > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 시스템식 요청드립니다. > 안녕하세요 예스스탁입니다. ExitLong("명칭",신호타입,신호가격,"진입명",수량,수량옵션); 청산함수는 위와같이 6개의 옵션을 지정할 수 있습니다. 현재 작성하신 청산식은 if 문으로 최근 진입명이나 청산명이 어떤 이름일때 동작하라는 내용만 있습니다. 1 5번째와 6번째는 수량과 수량관련 옵션입니다. 수량옵션을 0으로 지정하면 피라미딩시 각 진입별로 지정한 수량을 청산하게 됩니다. 수량옵션을 1로 지정하면 지정한 수량만 차감하게 됩니다. 수량옵션은 생략하면 0이 적용됩니다. 작성하신 수식에서는 모두 수량옵션이 생략이 되어 있어 수량옵션은 0이 적용되고 첨부하신 그림과 같이 2회 매수진입이 있고 동일날짜에 "타점"과 "타점1"에서 각각 30주씩 청산이 된 것입니다. 2 4번째 옵션이 진입명입니다. 청산함수에 진입명을 지정하면 해당진입명에서만 지정한 수량을 청산하게 됩니다. 올리신 수식에서는 진입명 옵션을 이용해 제어를 하셔야 합니다. if (LatestEntryName(0) == "타점1")Then ExitLong("타점1 5%익절",AtLimit,latestEntryPrice*1.05,"타점1",Floor(베팅금/타점)*0.3); 위와 같이 진입명에 "타점1"을 지정하시면 가장 최근 진입이 "타점1"이고 진입가에서 5% 상승하면 타점1에서만 30주 청산해라 라는 내용이 됩니다, 3 분할청산을 할 때는 청산함수의 4,5,6번 매개변수를 이용해 원하시는 내용으로 청산이 발생하게 제어를 하셔야 합니다. 즐거운 하루되세요 > 맴맴잉 님이 쓴 글입니다. > 제목 : 시스템식 요청드립니다. > 안녕하세요 수식을 작성하는데 어려움이 있어 이렇게 글을 남깁니다. 위의 그림 2, 3번을 보시면 대략적으로 그림으로 작성하였습니다. 타점 에서 100주 매수후 30주 매도 하고 중간에 30주 매도 해서 총 40주가 남은 상태에서 타점 1로 60주 매수해서 다시 100주가 되도록 맞췄습니다. 그런데 타점1 5% 익절에서 30주만 매도가 되어야 하는데 그림 1 성능보고서를 보시면, 타점에서 30주매도, 타점 1에서 30주 매도 총 60주가 매도 되었습니다. 타점, 타점 1이 따로따로 시스템식이 적용 되는것 같은데 어떻게 해야 할지 부탁드리겠습니다. input : 베팅금(1000000); input : 시작날짜 (20240113),Xtime(110000) ; input : 타점(5000),손절(1000); var : P618(0),P5(0),P382(0),HH(0),LL(0); Var : day(0),EntryDay(0),entry(False),dd(0),ED(0); if sDate >= 시작날짜 Then { if Bdate != Bdate[1] Then { entry = true; day = day+1; dd = dd+1; } if HH == 0 or (HH > 0 and H > HH) Then HH = H; #고점갱신용 수식 if LL == 0 or (LL > 0 and L < LL) Then LL = L; #저점갱신용 수식 } P618 = LL+(HH-LL)*0.618; P5 = LL+(HH-LL)*0.5; P382 = LL+(HH-LL)*0.382; if MarketPosition == 0 and entry == true and c > 타점 Then Buy("타점",AtLimit,타점,Floor((베팅금)/타점)); if MarketPosition == 1 Then { Condition1 = False; If C >= HH[1] AND LatestExitName(0) == "타점 5%익절 P5청산" Then { Condition1 = true; Buy("타점1",OnClosE,DeF,Floor((베팅금)/타점*0.6)); } If C >= HH[1] AND LatestExitName(0) == "타점 10%익절 P618청산" Then { Condition1 = true; Buy("타점2",OnClosE,DeF,Floor((베팅금)/타점*0.8)); } #전봉대비 수량 감소(일부 청산발생을 위미) if CurrentContracts < CurrentContracts[1] Then { #청산가 저장 var1 = LatestExitPrice(0); if LatestExitName(0) == "타점 5%익절" or LatestExitName(0) == "타점1 5%익절" or LatestExitName(0) == "타점2 5%익절" Then Condition11 = true; if LatestExitName(0) == "타점 5%익절 P5청산" or LatestExitName(0) == "타점 10%익절" or LatestExitName(0) == "타점1 5%익절 P618청산" or LatestExitName(0) == "타점1 10%익절" or LatestExitName(0) == "타점2 5%익절 P618청산" or LatestExitName(0) == "타점2 10%익절" Then Condition22 = true; if LatestExitName(0) == "타점 5%익절 P382청산" or LatestExitName(0) == "타점 10%익절 P618청산" or LatestExitName(0) == "타점1 5%익절 P5청산" or LatestExitName(0) == "타점1 10%익절 P618청산" or LatestExitName(0) == "타점2 5%익절 P5청산" or LatestExitName(0) == "타점2 10%익절 P618청산" Then Condition33 = true; if LatestExitName(0) == "타점 10%익절 P5청산" or LatestExitName(0) == "타점1 10%익절 P5청산" or LatestExitName(0) == "타점2 10%익절 P5청산" Then Condition44 = true; } #전봉대비 수량 증가(추가 진입발생을 의미) if CurrentContracts > CurrentContracts[1] Then { #현재수량 저장 Var3 = CurrentContracts; Var4 = AvgEntryPrice; Condition11 = False; Condition22 = False; Condition33= False; Condition44 = False; } if (LatestEntryName(0) == "타점") and Condition1 == False Then ExitLong("타점 5%익절",AtLimit,AvgEntryPrice*1.05,"",Floor(베팅금/타점)*0.3); if (LatestExitName(0) == "타점 5%익절") and c <= P5 Then ExitLong("타점 5%익절 P5청산",AtLimit,P5,"",Floor(베팅금/타점)*0.3); if (LatestExitName(0) == "타점 5%익절 P5청산") and c <= P382 Then ExitLong("타점 5%익절 P382청산",AtLimit,P382,"",Floor(베팅금/타점)*0.4); if (LatestEntryName(0) == "타점") and Condition1 == False Then ExitLong("타점 10%익절",AtLimit,AvgEntryPrice*1.2,"",Floor(베팅금/타점)*0.3); if (LatestExitName(0) == "타점 10%익절") and c <= P618 Then ExitLong("타점 10%익절 P618청산",AtLimit,P618,"",Floor(베팅금/타점)*0.2); if (LatestExitName(0) == "타점 10%익절 P618청산") and c <= P5 Then ExitLong("타점 10%익절 P5청산",AtLimit,P5,"",Floor(베팅금/타점)*0.2); if (LatestEntryName(0) == "타점1")Then ExitLong("타점1 5%익절",AtLimit,latestEntryPrice*1.05,"",Floor(베팅금/타점)*0.3); if (LatestExitName(0) == "타점1 5%익절") and c <= P618 Then ExitLong("타점1 5%익절 P618청산",AtLimit,P618,"",Floor(베팅금/타점)*0.3); if (LatestExitName(0) == "타점1 5%익절 P618청산") and c <= 5 Then ExitLong("타점1 5%익절 P5청산",AtLimit,P5,"",Floor(베팅금/타점)*0.4); if (LatestEntryName(0) == "타점1") Then ExitLong("타점1 10%익절",AtLimit,latestEntryPrice*1.1,"",Floor(베팅금/타점)*0.3); if (LatestExitName(0) == "타점1 10%익절") and c <= P618 Then ExitLong("타점1 10%익절 P618청산",AtLimit,P618,"",Floor(베팅금/타점)*0.2); if (LatestExitName(0) == "타점1 10%익절 P618청산") and c <= P5 Then ExitLong("타점1 10%익절 P5청산",AtLimit,P5,"",(베팅금/타점)*0.2); if (LatestEntryName(0) == "타점2")Then ExitLong("타점2 5%익절",AtLimit,latestEntryPrice*1.05,"",Floor(베팅금/타점)*0.3); if (LatestExitName(0) == "타점2 5%익절") and c <= P618 Then ExitLong("타점2 5%익절 P618청산",AtLimit,P618,"",Floor(베팅금/타점)*0.3); if (LatestExitName(0) == "타점2 5%익절 P618청산") and c <= 5 Then ExitLong("타점2 5%익절 P5청산",AtLimit,P5,"",Floor(베팅금/타점)*0.4); if (LatestEntryName(0) == "타점2") Then ExitLong("타점2 10%익절",AtLimit,latestEntryPrice*1.1,"",(베팅금/타점)*0.3); if (LatestExitName(0) == "타점2 10%익절") and c <= P618 Then ExitLong("타점2 10%익절 P618청산",AtLimit,P618,"",Floor(베팅금/타점)*0.2); if (LatestExitName(0) == "타점2 10%익절 P618청산") and c <= P5 Then ExitLong("타점2 10%익절 P5청산",AtLimit,P5,"",Floor(베팅금/타점)*0.2); } if MarketPosition == 1 and sTime > xtime and 손절 >= c Then ExitLong("손절"); if MarketPosition == 1 and (LatestEntryName(0) == "타점1") and c <= latestEntryPrice*0.96 Then ExitLong("5%돌파손절"); if MarketPosition == 1 and (LatestEntryName(0) == "타점2") and c <= latestEntryPrice*0.96 Then ExitLong("10%돌파손절");
프로필 이미지
맴맴잉
2024-03-12
945
글번호 177390
시스템
답변완료

부탁드립니다.

1. 종가가 전일 최고가 위로 올랐다가 다시 최고가 아래로 떨어지면 빨강색으로, 종가가 전일 최 저가 아래로 내렸다가 다시 최저가 위로 올라서면 파란색으로 구현해 주세요 2. 종가가 전주 최고가 위로 올랐다가 다시 최고가 아래로 떨어지면 빨강색으로, 종가가 전주 최저가 아래로 내렸다가 다시 최저가 위로 올라서면 파란색으로 구현해 주세요 3. 종가가 전월 최고가 위로 올랐다가 다시 최고가 아래로 떨어지면 빨강색으로, 종가가 전월 최저가 아래로 내렸다가 다시 최저가 위로 올라서면 파란색으로 구현해 주세요 고맙습니다.
프로필 이미지
서태공
2024-03-11
687
글번호 177389
강조
답변완료

20이평 값 출력 문의합니다.

주식 종목에 오늘부터 20일 전까지의 20 이평 값만 출력되도록, 아래와 같은 식을 적용하면 실제 20이평 값과 전혀 다른 값이 출력됩니다. 어떻게 수정하면 되는지 문의 드립니다. Input : period(20); Var : dd(0); if sDate >= CurrentDate Then { for dd=0 to (period-1) { Var1 = ma(C[dd], period); MessageLog("var1=%f", Var1); } }
프로필 이미지
투자
2024-03-11
782
글번호 177388
지표