답변완료
문의드립니다...
질문자 수식을 인용한 내용인데, 나름대로 지표에 적용을 해보았습니다..
지료의 의미에 대해서 죄송하지만 설명부탁좀 드립니다...
input : length(20),BB_mult(2.0);
var : BB_basis(0),dev(0),BB_upper(0),BB_lower(0);
BB_basis = ma(close, length);
dev = BB_mult * std(close, length);
BB_upper = BB_basis + dev;
BB_lower = BB_basis - dev;
input : KC_mult_high(1.0);
input : KC_mult_mid(1.5);
input : KC_mult_low(2.0);
var : KC_basis(0),devKC(0);
var : KC_upper_high(0),KC_lower_high(0);
var : KC_upper_mid(0),KC_lower_mid(0);
var : KC_upper_low(0),KC_lower_low(0);
var : NoSqz(False),LowSqz(False),MidSqz(False),HighSqz(False);
var : mom(0),iff_1(0),iff_2(0),mom_color(0),sq_color(0);
KC_basis = ma(close, length);
devKC = ma(TrueRange, length);
KC_upper_high = KC_basis + devKC * KC_mult_high;
KC_lower_high = KC_basis - devKC * KC_mult_high;
KC_upper_mid = KC_basis + devKC * KC_mult_mid;
KC_lower_mid = KC_basis - devKC * KC_mult_mid;
KC_upper_low = KC_basis + devKC * KC_mult_low;
KC_lower_low = KC_basis - devKC * KC_mult_low;
//SQUEEZE CONDITIONS
NoSqz = BB_lower < KC_lower_low or BB_upper > KC_upper_low; //NO SQUEEZE: GREEN
LowSqz = BB_lower >= KC_lower_low or BB_upper <= KC_upper_low; //LOW COMPRESSION: BLACK
MidSqz = BB_lower >= KC_lower_mid or BB_upper <= KC_upper_mid ;//MID COMPRESSION: RED
HighSqz = BB_lower >= KC_lower_high or BB_upper <= KC_upper_high; //HIGH COMPRESSION: ORANGE
//MOMENTUM OSCILLATOR
mom = LRL(close - avg(avg(highest(high, length), lowest(low, length)),ma(close, length)), length);
//MOMENTUM HISTOGRAM COLOR
iff_1 = iff(mom > iff(isnan(mom[1])==true,0,mom[1]) , Cyan , Blue);
iff_2 = iff(mom < iff(isnan(mom[1])==true,0,mom[1]) , red , yellow);
mom_color = iff(mom > 0 , iff_1 , iff_2);
//SQUEEZE DOTS COLOR
sq_color = iff(HighSqz , orange ,IFf(MidSqz , red ,IFf(LowSqz , black , green)));
//PLOTS
plot1(mom, "MOM",mom_color);
plot2(0, "SQZ", sq_color);
2023-11-18
1106
글번호 174179
지표
답변완료
수식검토 부탁드립니다.
수고 많으십니다.
Main.MessageList("손익=",PL7,"청산=",woo1,"현재가=",Cu7,"포지션 =",po7,"목표수익=",moksu);
if ( po7 == 1 && Cu7 >=woo1)ll( po7 == 1 && Cu7 >=moksu)
//만약 계좌의 포지션이 매도이고 현재가격(Cu7)이 woo1보다 크거나 같으면 매수청산
또는(or) 현재가격이 moksu보다 크거나 같으면 매수청산
ID7 = Account7.OrderBuy(MarketData1.code,vo7, 0, 1);
//전량 시장가로 매수주문(청산) 및 ID7에 주문아이디 저장
질문) 위 수식에서 (or) 논리연산자 표시가 영어소문자 (ㅣㅣ)엘 두개가 맞는지와
(or) 논리연산자를 if ( po7 == 1 && Cu7 >=woo1)ll( po7 == 1 && Cu7 >=moksu)
수식이 맞는지 검토 부탁드립니다.
바쁘신데 항상 감사드립니다.
2023-11-18
874
글번호 174177
시스템
답변완료
수식추가
안녕하세요
수식추가 부탁드림니다
아라식에서 볼밴 상.하단폭이 100틱이내에서 횡보후
상단으로 돌파시 매수
하단으로 돌파시 매도
Inputs : Period(170), Sence(1.3), CC_DN(Yellow);
Vars:
VLineUp(0),
VLineDn(0),
HHighest(0),
LLowest(0),
JustChanged(FALSE),
VLine(0), DBN(0);
Array:
Highs[35](0),
Lows[35](0),
RRange[35](0),
UpWave[1](FALSE),
DnWave[1](FALSE);
If STime == 180000 Then
DBN = 0;
DBN = DBN + 1;
Var1 = Period;
Var2 = Var1 - 1;
Var3 = Var1 - 2;
Var5 = Sence;
Var6 = H-L;
JustChanged = FALSE;
if CurrentBar <= Var2 then begin
Highs[CurrentBar] = Close;
Lows[CurrentBar] = Close;
RRange[CurrentBar] = (H-L) /2;
end;
if CurrentBar == Var1 then begin
if Highs[Var2] >= Highs[Var3] then begin
UpWave[1] = TRUE;
HHighest = Highs[Var2];
VLineUp = HHighest - (Var5 * MA(Var6,Var2));
#Plot1(VLineUp,"VLineUp");
end;
if Highs[Var2] < Highs[Var3] then begin
DnWave[1] = TRUE;
LLowest = Lows[Var2];
VLineDn = LLowest + (Var5 * MA(Var6,Var2));
#Plot2(VLineDn,"VLineDn");
end;
end;
if CurrentBar > Var1 then begin
if DnWave[1] and Close > VLineDn then begin
DnWave[1] = FALSE;
UpWave[1] = TRUE;
JustChanged = TRUE;
HHighest = Close;
LLowest = 0;
end;
if UpWave[1] and Close < VLineUp and JustChanged == FALSE then begin
UpWave[1] = FALSE;
DnWave[1] = TRUE;
JustChanged = TRUE;
LLowest = Close;
HHighest = 0;
end;
if JustChanged == FALSE then begin
if Close > HHighest then
HHighest = Close;
else if Close < LLowest then
LLowest = Close;
end;
VLineUp = HHighest - (Var5 * MA(Var6,Var2));
VLineDn = LLowest + (Var5 * MA(Var6,Var2));
/*if UpWave[1] then Plot1(VLineUp,"VLineUp", Red);
else if DnWave[1] then Plot1(VLineDn,"VLineUp", Blue);
*/
end;
input : P(10),short(12),long(26),sig(9);
var : mav(0),macdo(0),T(0);
mav = ma(C,P);
MACDo = MACD_OSC(short,long,sig);
if T <= 0 and upwave[1] and c > mav and macdo > 0 Then
{
t =1;
Buy();
}
if T >= 0 and dnwave[1] and c < mav and macdo < 0 Then
{
T = -1;
Sell();
}
2023-11-17
1149
글번호 174171
시스템