답변완료
문의 드립니다
1.
Input: Length(5), Pval(0.05);
Buy ("CBI_LE", AtStop, Highest(High, Length) + Pval);
ExitLong("CBI_SE", AtStop, Lowest(Low, Length) - Pval);
2.
Input: Length(5), Pval(0.05);
ExitShort ("CBI_LE", AtStop, Highest(High, Length) + Pval);
Sell("CBI_SE", AtStop, Lowest(Low, Length) - Pval);
----------------
1,2번 수식어에 2가지 조건일때 진입을 하고자 합니다.
1.
1번 수식어는 5 이동평균선이 80 이동평균선보다 위에 있고
이격도 80의 기준선이 100 이상 일때 진입입니다.
익절 100틱 손절 100틱
청산은 동일 합니다.
2.
2번 수식어는 5 이동평균선이 80 이동평균선보다 아래에 있고
이격도 80의 기준선이 100 이하 일때 진입입니다.
익절 100틱 손절 100틱
청산은 동일 합니다.
추가로 익절이나 손절 청산시 잔고가 소멸 되질않고 반대포지션의 수량이 계속진행형인데
잔고가 없게 할수 있는지 별도의 수식어도 부탁 드립니다.
미리 감사드립니다.
2023-08-28
722
글번호 171881
시스템
답변완료
부탁드립니다.
변형 부탁 드립니다.
price = input(hl2, "Price")
colorNormLength = input(3, "colorNormLength", input.integer)
dpoLength = input(13, "dpoLength", input.integer)
moboDisplace = input(0, "moboDisplace", input.integer)
moboLength = input(10, "moboLength", input.integer)
numDevDn = input(-0.8, "numDevDn", input.float)
numDevUp = input(0.8, "numDevUp", input.float)
coloredMobo = input(true, "coloredMobo")
coloredFill = input(true, "coloredFill")
breakArrows = input(true, "breakArrows")
moboShowMid = input(true, "moboShowMid")
//def DPO = price - Average(price[DPO_length / 2 + 1], DPO_length);
xsma = sma(price[dpoLength / 2 + 1], dpoLength)
//xsma = sma(price, dpoLength)
DPO = price - xsma
Midline = sma(DPO, moboLength)
sDev = stdev(DPO, moboLength)
LowerBand = Midline + numDevDn * sDev
UpperBand = Midline + numDevUp * sDev
plot(DPO, color=color.yellow,linewidth=2)
plot(Midline, color=Midline > Midline[1] ? color.lime : color.red,linewidth=2)
Upper = plot(UpperBand, color=color.black,linewidth=1)
Lower = plot(LowerBand, color=color.black,linewidth=1)
plot(0, color=color.white,linewidth=1)
Signal1 = DPO > UpperBand and DPO[1] < UpperBand[1]
Signal2 = DPO < LowerBand and DPO[1] > LowerBand[1]
wasUp = 1
wasDn = 1
wasUp := Signal1 ? 1 : (Signal2 ? 0 : nz(wasUp[1]))
wasDn := Signal2 ? 1 : (Signal1 ? 0 : nz(wasDn[1]))
//plotshape(Signal1 and wasDn[1] ? UpperBand : na, style=shape.arrowup, location=location.absolute, size=size.normal, color=color.red)
//plotshape(Signal2 and wasUp[1] ? LowerBand : na, style=shape.arrowdown, location=location.absolute, size=size.normal, color=color.green)
plotshape(Signal1 and wasDn[1] ? UpperBand : na, style=shape.labelup, location=location.absolute, size=size.normal, color=color.green, text="Buy",textcolor=color.white)
plotshape(Signal2 and wasUp[1] ? LowerBand : na, style=shape.labeldown, location=location.absolute, size=size.normal, color=color.red, text="Sell",textcolor=color.white)
fill(Upper, Lower, color=color.purple)
alertcondition(Signal1 and wasDn[1], "Break Out Arrow", "Break Out Arrow")
alertcondition(Signal2 and wasUp[1], "Break Down Arrow", "Break Down Arrow")
2023-08-28
942
글번호 171878
지표
답변완료
연장선 좀 부탁 드립니다.
* 안녕하세요^^ 항상 많은 도움에 고맙습니다.
* 요청 사항1 ▶ 아래 수식에서 우측선 연장 부탁 드립니다.
즉 다음 신호 나올때 까지 우측선 부탁 드립니다.(bb는 삭제)
기존왼쪽선은 그대로 두고
다음 고가선 혹은 저가선이 발생할때 까지 우측선 연장
// 아래방식으로 Else 를 써 보았는데 수직선이 생기는데 잘못한게 뭐죠?
// Else
{
TL_SetEnd(HTL[0],sDate,sTime,bb);
Text_SetLocation(TX,sDate,sTime,bb);
}
// 이것을 사용 해봤는데 수직선이 생김니다.
// 어느부분이 잘못되었나요?
* 요청 사항2 ▶ 마지막 봉 기준 하락율좀 부탁 드립니다.(피보나치선)
즉 맨 마지막 봉 기준
마지막 봉대비 0.25 하락한 우측 추세선(굵기 0) 점선
마지막 봉대비 0.38 하락선 우측 추세선(굵기 0) 점선
마지막 봉대비 0.50 하락선 우측 추세선(굵기 0) 점선
마지막 봉대비 -0.25 하락선 우측 추세선(굵기 0) 점선
마지막 봉대비 -0.38 하락선 우측 추세선(굵기 0) 점선
마지막 봉대비 -0.50 하락선 우측 추세선(굵기 0) 점선
6개 추세선이 상기 우측 연장선 하고 같이 생기도록 부탁 드립니다.
▶새로운 추세선이 발생하면 종료 하고 새로운 추세선 가격 기준 6개선 발생 하면서
이전 추세선은 1개(변수) 까지만 6개선 점선 표시 (2개 이전은 삭제)
즉 추세선 2개(변수) 라면 3개이전은 삭제
* 혹시 6개선이 안생긴다면 Lowest(L,P)[1] 를 Lowest(L,P)[3] 바꾸어도 됨니다
<아래수식>
input : bb(10);
var : TX(0);
input : P(10),n(9),틱(5);
var : cnt(0),LL(0),HH(0);
Array : LTL[10](0),HTL[10](0);
if L < Lowest(L,P)[1] and (LL == 0 or (LL > 0 and abs(L-LL) >= PriceScale*틱)) Then
{
LL = L;
For cnt = 9 DownTo 1
{
LTL[cnt] = LTL[cnt-1];
}
LTL[0] = TL_new(sDate,sTime,LL,sDate[200],sTime[200],LL);
TL_SetColor(LTL[0],Blue);
TL_Delete(LTL[n]);
}
if H > highest(H,P)[1] and (HH == 0 or (HH > 0 and abs(H-HH) >= PriceScale*틱)) Then
{
HH = H;
For cnt = 9 DownTo 1
{
HTL[cnt] = HTL[cnt-1];
}
HTL[0] = TL_new(sDate,sTime,HH,sDate[200],sTime[200],HH);
TL_SetColor(HTL[0],Red);
TL_Delete(HTL[n]);
}
// 아래부분 이 잘못 된거 갔습니다. 수정좀 요청 드립니다.
Else
{
TL_SetEnd(HTL[0],sDate,sTime,bb);
Text_SetLocation(TX,sDate,sTime,bb);
}
* 고맙습니다 행복한 날 되십시요^^
좋은날 있을것 입니다.
2023-08-28
1343
글번호 171874
지표
답변완료
안녕하세요 수식문의 부탁드립니다^^
안녕하세요 고생이 많으세요 종목검색수식문의를 부탁드리려고합니다.
아래수식 2가지를 사용중인데요 하나로 합쳐서 결과를 보고싶습니다
잘부탁드리겠습니다.^^
==============================================
input : 단기(20),중기(60),장기(120);
input : Multiple(1000);
var : p(0),k(0),q(0),x(0),y(0),z(0);
p = (highest(high,단기)+lowest(low,단기))/2;
k = (highest(high,중기)+lowest(low,중기))/2;
q = (p+k)/2;
x = (highest(high,장기)+lowest(low,장기))/2;
y = (highest(high,장기)+lowest(low,장기))/2;
z = (x+y)/2;
var1 = (q-z)/q*100;
if CrossUp(var1,0) and V[1] * (Multiple/100) <= V Then
find(1);
==============================================
input : 단기(20),중기(60),장기(120);
var : p(0),k(0),q(0),x(0),y(0),z(0),a(False),b(0);
p = (highest(high,단기)+lowest(low,단기))/2;
k = (highest(high,중기)+lowest(low,중기))/2;
q = (p+k)/2;
x = (highest(high,장기)+lowest(low,장기))/2;
y = (highest(high,장기)+lowest(low,장기))/2;
z = (x+y)/2;
a = Crossdown((q-z)/q*1000, 0);
if a == true Then
b = c;
if b > 0 and CrossUp(C,b) Then
Find(1);
2023-08-27
1337
글번호 171873
종목검색