답변완료
수식 문의
아래는 일전에 도움 주신 수식입니다.
아래 수식을
특정 시작시간과 종료시간을 넣으면
그 시간에는 시그널이 나오지 않게 만들고 싶습니다.
해외선물에 적용할 생각입니다.
날짜 변경에 영향받지 않도록 부탁드립니다.
감사합니다.
input : period1(1),short(12),long(26),sig(9),rsip(10),signal(10),n(10);
var : haClose(0,Data1),haOpen(0,Data1),haHigh(0,Data1),haLow(0,Data1);
var : v11(0,Data1),v12(0,Data1);
var : macdo2(0,Data2),rsiv(0,Data1),rsis(0),ii(0,Data1);
if data1(Index > 1) then
{
haClose = Data1((Open+High+Low+Close)/4);
haOpen = Data1((haOpen[1] + haClose[1])/2);
haHigh = data1(Max(High, haOpen, haClose));
haLow = data1(Min(Low, haOpen, haClose));
}
v11 = data1(ma(haClose,period1));
V12 = data1(ma(haOpen,period1));
macdo2 = Data2(MACD_OSc(short,long,sig));
rsiv = Data1(rsi(rsip));
rsis = Data1(ma(rsiv,signal));
if CrossUp(rsiv,rsis) Then
ii = Index;
if macdo2 > 0 and
rsiv > rsis and
rsiv < 50 and
Data1(Index) <= ii+n and
CrossUp(v11,v12) Then
Buy();
if CrossDown(rsiv,rsis) Then
ii = Index;
if macdo2 < 0 and
rsiv < rsis and
rsiv > 50 and
Data1(Index) <= ii+n and
CrossUp(v12,v11) Then
Sell();
2022-11-25
1127
글번호 164163
시스템
답변완료
문의 드립니다!
안녕하세요!
아래 수식을 대상으로 해서 다음과같이 2가지 경우로 수정 부탁드립니다
1, 수식1과 수식2의 조건이 일치시 선이 발생토록 수정
2, 수식1과 수식3의 조건이 일치시 선이 발생토록 수정
감사합니다!!
----------------------------------------------------
<수식 1>
input : N(30),색1(white),색2(white),굵기1(2),굵기2(2),형태1(1),형태2(1);
input : 세로선색(White),세로선굵기(2),세로선형태(1);
var : cnt(0),HH(0),LL(0),HTL1(0),LTL1(0),H1(0),L1(0),TL(0);
Array : HTL[100](0),LTL[100](0),HV[100](0),LV[100](0);
if Sdate != sDate[1] Then
{
value1 = sDate;
Value2 = value1[1];
Value3 = sTime;
Value4 = Value3[1];
For cnt = 1 to N
{
HV[cnt] = 0;
LV[cnt] = 0;
TL_Delete(HTL[cnt]);
TL_Delete(LTL[cnt]);
var1 = max(DayOpen(cnt),DayClose(cnt));
var2 = min(DayOpen(cnt),DayClose(cnt));
if cnt == 1 Then
{
HTL[cnt] = TL_New(sDate,sTime,var1,NextBarSdate,NextBarStime,var1);
HV[cnt] = var1;
TL_SetColor(HTL[cnt],색1);
TL_SetSize(HTL[cnt],굵기1);
TL_SetStyle(HTL[cnt],형태1);
TL_SetExtRight(HTL[cnt],true);
TL_SetDrawMode(HTL[cnt],0);
HH = var1;
LTL[cnt] = TL_New(sDate,sTime,var2,NextBarSdate,NextBarStime,var2);
LV[cnt] = var2;
TL_SetColor(LTL[cnt],색2);
TL_SetSize(LTL[cnt],굵기2);
TL_SetStyle(LTL[cnt],형태2);
TL_SetExtRight(LTL[cnt],true);
TL_SetDrawMode(LTL[cnt],0);
LL = var2;
}
Else
{
if abs(var1-DayOpen(0)) < 10 and (var1 > HH or var1 < LL) Then
{
HTL[cnt] = TL_New(sDate,sTime,var1,NextBarSdate,NextBarStime,var1);
HV[cnt] = var1;
TL_SetColor(HTL[cnt],색1);
TL_SetSize(HTL[cnt],굵기1);
TL_SetStyle(HTL[cnt],형태1);
TL_SetExtRight(HTL[cnt],true);
TL_SetDrawMode(HTL[cnt],0);
}
if abs(Var2-DayOpen(0)) < 10 and (Var2 > HH or Var2 < LL) Then
{
LTL[cnt] = TL_New(sDate,sTime,Var2,NextBarSdate,NextBarStime,Var2);
LV[cnt] = var2;
TL_SetColor(LTL[cnt],색2);
TL_SetSize(LTL[cnt],굵기2);
TL_SetStyle(LTL[cnt],형태2);
TL_SetExtRight(LTL[cnt],true);
TL_SetDrawMode(LTL[cnt],0);
}
if var1 > HH and abs(var1-DayOpen(0)) < 10 Then
HH = DayHigh(cnt);
if Var2 < LL and abs(Var2-DayOpen(0)) < 10 Then
LL = DayLow(cnt);
}
var3 = max(DayOpen(cnt+1),DayClose(cnt+1));
var4 = min(DayOpen(cnt+1),DayClose(cnt+1));
if cnt == 1 Then
{
HTL1 = TL_New(Value2,value4,var3,sDate[1],sTime[1],var3);
TL_SetColor(HTL1,색1);
TL_SetSize(HTL1,굵기1);
TL_SetStyle(HTL1,형태1);
TL_SetDrawMode(HTL1,0);
H1 = var3;
LTL1 = TL_New(Value2,Value3,var4,sDate[1],sTime[1],var4);
TL_SetColor(LTL1,색2);
TL_SetSize(LTL1,굵기2);
TL_SetStyle(LTL1,형태2);
TL_SetDrawMode(LTL1,0);
L1 = var4;
}
Else
{
if abs(var3-DayOpen(1)) < 10 and (var3 > H1 or var3 < L1) Then
{
HTL1 = TL_New(Value2,value4,var3,sDate[1],sTime[1],var3);
TL_SetColor(HTL1,색1);
TL_SetSize(HTL1,굵기1);
TL_SetStyle(HTL1,형태1);
TL_SetDrawMode(HTL1,0);
}
if abs(Var4-DayOpen(1)) < 10 and (Var4 > H1 or Var4 < L1) Then
{
LTL1 = TL_New(Value2,Value3,var4,sDate[1],sTime[1],var4);
TL_SetColor(LTL1,색2);
TL_SetSize(LTL1,굵기2);
TL_SetStyle(LTL1,형태2);
TL_SetDrawMode(LTL1,0);
}
if var3 > H1 and abs(var3-DayOpen(1)) < 10 Then
H1 = Var3;
if Var2 < L1 and abs(Var2-DayOpen(0)) < 10 Then
L1 = Var4;
}
}
}
Else
{
Condition1 = False;
For cnt = 1 to N
{
if (HV[cnt] > 0 and H >= HV[cnt] and H[1] < HV[cnt]) or
(HV[cnt] > 0 and L <= HV[cnt] and L[1] > HV[cnt]) or
(LV[cnt] > 0 and H >= LV[cnt] and H[1] < LV[cnt]) or
(LV[cnt] > 0 and L <= LV[cnt] and L[1] > LV[cnt]) Then
Condition1 = true;
}
if Condition1 == true Then
{
TL = TL_New(sDate,sTime,0,sDate,sTime,99999999);
TL_SetColor(TL,세로선색);
TL_SetSize(TL,세로선굵기);
TL_SetStyle(TL,세로선형태);
}
}
<수식 2>
input : 굵기1(3),굵기2(3),굵기3(3),굵기4(3);
var : cond11(false,data1),cond21(false,data1);
var : cond12(false,data1),cond22(false,data1);
var : TL1(0,Data1),TL2(0,Data1),TL3(0,Data1),TL4(0,Data1);
plot1(data2(highD(0)),"data2고가");
plot2(data2(LowD(0)),"data2저가");
plot3(data3(highD(0)),"data3고가");
plot4(data3(LowD(0)),"data3저가");
cond11 = data2(highD(0)) >= data3(highD(0)-PriceScale*1);
cond21 = data3(lowD(0)) <= data2(lowD(0)+PriceScale*1);
if sTime >= 90300 and Cond11 == true and cond11[1] == false Then
{
PlaySound("C:₩예스트레이더₩data₩Sound₩.wav");
TL1 = TL_New(sDate,stime,0,sDate,sTime,99999999);
TL_SetColor(TL1,White);
TL_SetSize(TL1,굵기1);
}
if sTime >= 90300 and Cond21 == true and cond21[1] == false then
{
PlaySound("C:₩예스트레이더₩data₩Sound₩.wav");
TL2 = TL_New(sDate,stime,0,sDate,sTime,99999999);
TL_SetColor(TL2,Yellow);
TL_SetSize(TL2,굵기2);
}
cond12 = data2(LowD(0)) <= data3(lowD(0)+PriceScale*1);
cond22 = data3(highD(0)) >= data2(highD(0)-PriceScale*1);
if sTime >= 90300 and Cond12 == true and cond12[1] == false Then
{
PlaySound("C:₩예스트레이더₩data₩Sound₩.wav");
TL3 = TL_New(sDate,stime,0,sDate,sTime,99999999);
TL_SetColor(TL3,White);
TL_SetSize(TL3,굵기3);
}
if sTime >= 90300 and Cond22 == true and cond22[1] == false then
{
PlaySound("C:₩예스트레이더₩data₩Sound₩.wav");
TL4 = TL_New(sDate,stime,0,sDate,sTime,99999999);
TL_SetColor(TL4,Yellow);
TL_SetSize(TL4,굵기4);
}
<수식 3>
input : N(1);
var : V1(0,data1);
var : idx(0,Data1);
if Bdate != Bdate[1] Then
{
v1 = 0;
idx = 0;
}
idx = idx+1;
if idx >= N Then
{
if crossup(data6(H),data21(L)) or CrossDown(data6(L),data21(H)) Then
{
v1 = data1(C);
}
if crossup(data6(H),data21(L)) or CrossDown(data6(L),data21(H)) Then
{
v1 = data1(C);
}
plot1(v1);
plot2(v1);
}
Else
{
NoPlot(1);
NoPlot(2);
}
2022-11-25
733
글번호 164156
지표