커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

시스템질문

안녕하세요~ <질문1> 아래수식에서 매수 4,5,6의 매수에 있어 매수1,2,3이 한봉에 2개이상 매수되는경우 작동을 안하는것 같은데요 수정부탁드립니다 <질문2> 아래수식에서 매수3가 매수되었을때만 매수4,매수5,매수6이 중복 매수되지 않도록 되어있는데요 매수1, 매수2, 매수3 어떤것이 매수되더라도 매수된값들을 체크하여 최저가로 매수된 가격을 기준으로 매수4, 매수5, 매수6가 순차적으로 매수되도록 변경하고 싶습니다 *매수는 매수조건이 동일가격에서 만족되더라도 항상 중복매수되지 않도록부탁드립니다 감사합니다~ INPUT : 매수(0), 매도조건(1); var : cond(False),LP(0); var1 = ma(C,3); var2 = ma(C,5); var3 = ma(C,10); var4 = ma(C,60); value1 = 0; if value1 == 0 and C < Var4 and CrossDown(c,var3) and cond == False Then { if MarketPosition == 0 or (MarketPosition == 1 and C < LP and Condition1 == False) Then { value1 = 1; Buy("매수3"); } } if value1 == 0 and C < var4 and CrossDown(c,var2) and cond == False Then { if MarketPosition == 0 or (MarketPosition == 1 and C < LP and Condition1 == False) Then { value1 = 1; Buy("매수2"); } } if value1 == 0 and C < Var4 and CrossDown(c,var1) and cond == False Then { if MarketPosition == 0 or (MarketPosition == 1 and C < LP and Condition1 == False) Then { value1 = 1; Buy("매수1"); } } 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; }
프로필 이미지
쭈니오빠
2021-01-01
671
글번호 145035
시스템

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

프로필 이미지
러블리
2020-12-31
170
글번호 145034
시스템
답변완료

수식 문의드립니다.

안녕하세요 항상 많은 도움 감사드리며... 연말을 맞이하여 하나 더 질문 드립니다 ㅠㅠ 일봉차트에서 data2는 주봉, data3은 월봉으로 설정하고, 최근 월봉 거래량이 1000000 이상인 종목이면서 주봉 거래량이 500000 이상인 종목을 검색하는 식 문의드립니다. 참조데이터 사용이 불가능하다면... 일봉 최근 10개봉에서 거래량이 1000000을 넘으면서 거래총액이 10억이 넘는 종목들을 검색하는 식과 시장가 매수식 부탁드립니다. 연말 잘 보내시고~ 새로운 한해 잘 맞이하시길 바래요~!
프로필 이미지
이엘성투
2020-12-31
691
글번호 145033
시스템
답변완료

시스템매매 함수로 부탁드립니다.

아래와 같은 지표수식에서 돌파와 붕괴 지표가 RED로 바뀌고 이평1이 이평2를 돌파할때 매수 돌파와 붕괴 지표가 BLUE로 바뀌고 이평2가 이평1를 돌파할때 매도, 10틱 이익이면 청산, 10틱손실이면 손절할수 있게 수식을 분단위 기준으로 부탁드립니다. var : 이평1(0),이평2(0),t(0); var : hh(0),hd(0),ht(0),hh1(0),hd1(0),ht1(0),고점추세선(0); var : ll(0),ld(0),lt(0),ll1(0),ld1(0),lt1(0),저점추세선(0); 이평1 = ma(C,20); 이평2 = ma(C,60); Plot1(이평1); Plot2(이평2); If crossup(이평1,이평2) Then { t = 1; hh = h; hd = sDate; ht = sTime; hh1 = hh[1]; hd1 = hd[1]; ht1 = ht[1]; if hh1 > 0 Then { TL_SetExtRight(고점추세선,False); 고점추세선 = TL_New(hd1,ht1,hh1,hd,ht,hh); TL_SetColor(고점추세선,RED); TL_SetExtRight(고점추세선,true); } } If crossdown(이평1,이평2) Then { t = -1; ll = l; ld = sDate; lt = sTime; ll1 = ll[1]; ld1 = ld[1]; lt1 = lt[1]; if ll1 > 0 Then { TL_SetExtRight(저점추세선,False); 저점추세선 = TL_New(ld1,lt1,ll1,ld,lt,ll); TL_SetColor(저점추세선,BLUE); TL_SetExtRight(저점추세선,true); } } if t == 1 Then { if h > hh Then { hh = h; hd = sDate; ht = sTime; TL_SetEnd(고점추세선,hd,ht,hh); } } if t == -1 Then { if l < ll Then { ll = l; ld = sDate; lt = sTime; TL_SetEnd(저점추세선,ld,lt,ll); } } If c > TL_GetValue(고점추세선,sDate,sTime) and C[1] < TL_GetValue(고점추세선,sDate[1],sTime[1]) Then { plot3(L-0.5,"돌파",BLUe); } If c > TL_GetValue(저점추세선,sDate,sTime) and C[1] < TL_GetValue(저점추세선,sDate[1],sTime[1]) Then { plot3(L-0.5,"돌파",REd); } If c < TL_GetValue(고점추세선,sDate,sTime) and C[1] > TL_GetValue(고점추세선,sDate[1],sTime[1]) Then { plot4(H+0.5,"붕괴",BLUe); } If c < TL_GetValue(저점추세선,sDate,sTime) and C[1] > TL_GetValue(저점추세선,sDate[1],sTime[1]) Then { plot4(H+0.5,"붕괴",REd); }
프로필 이미지
미완
2020-12-30
787
글번호 145032
시스템
답변완료

아래 70458 재질문 답변 부탁드립니다 (내용 무)

.
프로필 이미지
골드드래곤
2020-12-30
715
글번호 145031
지표
답변완료

수식 문의

안녕하세요? 수식 정정 부탁 드립니다. 감사드리며, 멋진 2021 되길 기원합니다.
프로필 이미지
에구머니
2021-01-04
710
글번호 145030
시스템
답변완료

오류수정 부탁드립니다. 감사합니다.

Inputs: Length(NumericSimple),TargetUpLevel(NumericSimple),TargetDnLevel(NumericSimple), NxtYn(NumericSimple), // 다음 봉의 값을 구하려면 1을 아니면 0을 넣어준다. oUpBand(NumericRef), // 주소전달방식임을 선언 oDnBand(NumericRef), // 값을 입력받는게 아니라 여기에 결과값을 채워서 반환한다. oMidLine(NumericRef); // 변수명 앞에 소문자를 o를 붙인 것은 output 변수입을 나타냅니다. Variables: Counter(0), DownAmt(0), UpAmt(0), UpSum(0), DownSum(0), UpAvg(0), DownAvg(0),MidLevel(0); If CurrentBar == 1 AND Length > 0 Then Begin UpSum = 0; DownSum = 0; For Counter = 0 To Length - 1 Begin UpAmt = C[Counter] - C[Counter+1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / Length; DownAvg = DownSum / Length; End Else If CurrentBar > 1 AND Length > 0 Then Begin UpAmt = C[0] - C[1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (Length - 1) + UpAmt) / Length; DownAvg = (DownAvg[1] * (Length - 1) + DownAmt) / Length; End; If UpAvg + DownAvg <> 0 Then Value1 = 100 * UpAvg / (UpAvg + DownAvg); Else Value1 = 0; If nxtYn == 1 Then // 다음 봉 여부가 1일 경우 { If Value1 > TargetUpLevel Then // 상단밴드 oUpBand = (((TargetUpLevel - 100) / TargetUpLevel * UpAvg) + DownAvg) * (Length - 1) + C; Else oUpBand = ((TargetUpLevel / (100 - TargetUpLevel) * DownAvg) - UpAvg) * (Length - 1) + C; If Value1 > TargetDnLevel Then // 하단밴드 oDnBand = (((TargetDnLevel - 100) / TargetDnLevel * UpAvg) + DownAvg) * (Length - 1) + C; Else oDnBand = ((TargetDnLevel / (100 - TargetDnLevel) * DownAvg) - UpAvg) * (Length - 1) + C; MidLevel = (TargetUpLevel + TargetDnLevel) / 2; // 중간라인 If Value1 > MidLevel Then oMidLine = (((MidLevel - 100) / MidLevel * UpAvg) + DownAvg) * (Length - 1) + C; Else oMidline = ((MidLevel / (100 - MidLevel) * DownAvg) - UpAvg) * (Length - 1) + C; } Else // 다음 봉 여부가 0인 경우 { If Value1[1] > TargetUpLevel Then oUpBand = (((TargetUpLevel - 100) / TargetUpLevel * UpAvg[1]) + DownAvg[1]) * (Length - 1) + C[1]; Else oUpBand = ((TargetUpLevel / (100 - TargetUpLevel) * DownAvg[1]) - UpAvg[1]) * (Length - 1) + C[1]; If Value1[1] > TargetDnLevel Then oDnBand = (((TargetDnLevel - 100) / TargetDnLevel * UpAvg[1]) + DownAvg[1]) * (Length - 1) + C[1]; Else oDnBand = ((TargetDnLevel / (100 - TargetDnLevel) * DownAvg[1]) - UpAvg[1]) * (Length - 1) + C[1]; MidLevel = (TargetUpLevel + TargetDnLevel) / 2; If Value1[1] > MidLevel Then oMidLine = (((MidLevel - 100) / MidLevel * UpAvg[1]) + DownAvg[1]) * (Length - 1) + C[1]; Else oMidline = ((MidLevel / (100 - MidLevel) * DownAvg[1]) - UpAvg[1]) * (Length - 1) + C[1]; } RSI_BAND = 1; //사용자함수는 반환값이 있어야 한다고 했습니다. // oUpBand, oDnBand, oMidLine 는 메모리 주소이지 반환값이 아닙니다. // 그래서 마지막에 아무 값이나 넘겨 줘야 하기 때문에 그냥 1을 넣어 줬습니다.
프로필 이미지
매버릭
2020-12-30
786
글번호 145029
사용자 함수

골드드래곤 님에 의해서 삭제되었습니다.

프로필 이미지
골드드래곤
2020-12-30
1
글번호 145028
지표
답변완료

DATA2와 DATA3을 이용하는 시스템 매매식을 부탁드립니다.

해외선물 기준 동일종목으로 시간은 다르게 참조 주종목 10분 Keltner Channel 변수값 MALEN 10 CONST 0.8 ATRs 0 Price Channel 변수값 LENGTH 14 DATA2 60분 Keltner Channel 변수값 MALEN 10 CONST 0.8 ATRs 0 Price Channel 변수값 LENGTH 20 DATA3 240분 Keltner Channel 변수값 MALEN 10 CONST 0.8 ATRs 0 Price Channel 변수값 LENGTH 24 기준으로 해외선물을 다음 조건을 기준(전체기준 중 일부입니다)으로 매매를 할 예정입니다. 기본 시스템식을 부탁드립니다. [진입은 1계약으로 청산 후 동일 조건이 오면 계속 진입과 청산을 반복 하도록 매매식을 부탁드립니다] [1]매수 1.매수1조건 매수1 진입 1.CrossDown(C,BCHAN) and DATA2 CrossDown(C,LOWER) and DATA3 CrossDown(C,CENTLINE) 2.L(저가)==BCHAN-PriceScale*4 and DATA2 LOWER > C > BCHAN and DATA3 CENTLINE > C > LOWER 매수1 청산 1.CrossUp(C,TCHAN) and DATA2 CrossUp(C,TCHAN) and DATA3 CrossUp(C,TCHAN) 2.H(고가)==TCHAN+PriceScale*4 and DATA2 H==TCHAN+PriceScale*12 and DATA3 H==TCHAN+PriceScale*12 매수1 손절 1.L(저가)==BCHAN-PriceScale*6 2.매수2조건 매수2 진입 1.CrossDown(C,BCHAN) and DATA2 CrossDown(C,LOWER) and DATA3 CrossDown(C,CENTLINE) 2.L==BCHAN-PriceScale*4 and DATA2 LOWER > C > BCHAN and DATA3 CENTLINE > C > LOWER 매수2 청산 1. CrossUp(C,TCHAN) and DATA2 CrossUp(C,TCHAN) and DATA3 CrossUp(C,UPPER) 2. H==TCHAN+PriceScale*4 and DATA2 H==TCHAN+PriceScale*12 and DATA3 TCHAN>C>UPPER 매수2 손절 1.L==BCHAN-PriceScale*6 3.매수3조건 매수3 진입 1.CrossDown(C,BCHAN) and DATA2 CrossDown(C,BCHAN) and DATA3 CrossDown(C,LOWER) 2.L==BCHAN-PriceScale*4 and DATA2 L==BCHAN-PriceScale*12 and DATA3 LOWER > C > BCHAN 매수3 청산 1.CrossUp(C,TCHAN) and DATA2 CrossUp(C,CENTLINE) and DATA3 CrossUp(C,UPPER) 2.H==TCHAN+PriceScale*4 and DATA2 UPPER>C>CENTLINE and DATA3 CENTLINE>C>LOWER 매수3 손절 1.L==BCHAN-PriceScale*6 and DATA2 L==TCHAN-PriceScale*19 [2]매도 1.매도1조건 매도1 진입 1.CrossUp(C,TCHAN) and DATA2 CrossUp(C,TCHAN) and DATA3 CrossUp(C,TCHAN) 2.H(고가)==TCHAN+PriceScale*4 and DATA2 H==TCHAN+PriceScale*12 and DATA3 H==TCHAN+PriceScale*12 매도1 청산 1.CrossDown(C,BCHAN) and DATA2 CrossDown(C,BCHAN) and DATA3 CrossDown(C,LOWER) 2.L(저가)==BCHAN-PriceScale*4 and DATA2 L==BCHAN-PriceScale*12 and DATA3 LOWER > C > BCHAN 매도1 손절 1.H(고가)==TCHAN+PriceScale*6 and DATA2 H==TCHAN+PriceScale*19 and DATA3 H==TCHAN+PriceScale*19 2.매도2조건 매도2 진입 1.CrossUp(C,TCHAN) and DATA2 CrossUp(C,TCHAN) and DATA3 CrossUp(C,TCHAN) 2.H==TCHAN+PriceScale*4 and DATA2 H==TCHAN+PriceScale*12 and DATA3 H==TCHAN+PriceScale*12 매도2 청산 1.CrossDown(C,BCHAN) and DATA2 CrossDown(C,LOWER) and DATA3 CrossDown(C,CENTLINE) 2.L==BCHAN-PriceScale*4 and DATA2 LOWER>C>BCHAN and DATA3 CENTLINE > C > LOWER 매도2 손절 1.H==TCHAN+PriceScale*6 and DATA2 H==TCHAN+PriceScale*19 and DATA3 H==TCHAN+PriceScale*19 3.매도3조건 매도3 진입 1.CrossUp(C,TCHAN) and DATA2 CrossUp(C,TCHAN) and DATA3 CrossUp(C,UPPER) 2.H==TCHAN+PriceScale*4 and DATA2 H==TCHAN+PriceScale*12 and DATA3 TCHAN>C>UPPER 매도6 청산 1.CrossDown(C,BCHAN) and DATA2 CrossDown(C,LOWER) and DATA3 CrossDown(C,CENTLINE) 2.L==BCHAN-PriceScale*4 and DATA2 LOWER>C>BCHAN and DATA3 CENTLINE > C > LOWER 매도6 손절 1.H==TCHAN+PriceScale*6 and DATA2 H==TCHAN+PriceScale*19
프로필 이미지
황금룰
2020-12-30
824
글번호 145005
시스템

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

프로필 이미지
러블리
2020-12-30
167
글번호 145004
지표