답변완료
수식 의뢰드립니다!
안녕하세요!
아래 파라볼릭수식의 양전환과 음전환시 종가를 사용하여 바탕색을 넣고 싶습니다!
당일 장이 열리면 전일 장과 파라볼릭이 연결되지 않은 새로운 장으로 바탕색이
나타나도록 부탁드립니다!
항상 감사합니다!
참고 그림 첨부합니다!
Input : AF(0.02), AFMAX(0.2);
Var : Direction(0), SAR_Value(Close), AF_Value(.02), HighValue(High), LowValue(Low), EP(0),CSarv(0);
if Bdate != Bdate[1] Then
{
Direction = 0;
SAR_Value = Close;
AF_Value = 0.02;
HighValue = High;
LowValue = Low;
EP = 0;
}
if EP != 0 Then
{
if Direction == 1 then
{
EP = HighValue;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if High > HighValue then
{
HighValue = High;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
if Close < SAR_Value then
{
Direction = -1;
SAR_Value = EP;
AF_Value = 0;
EP = 0;
LowValue = low;
}
}
else
{
EP = LowValue;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if Low < LowValue then
{
LowValue = Low;
AF_Value = AF_Value + Af;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
if Close > SAR_Value then
{
Direction = 1;
SAR_Value = EP;
AF_Value = 0;
EP = 0;
HighValue = High;
}
}
CSarv = SAR_Value;
}
else
{
if SAR_Value != 0 && EP == 0 then
{
if Direction == 1 then
{
EP = HighValue;
AF_Value = AF;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if High > HighValue then
{
HighValue = High;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
}
else
{
EP = LowValue;
AF_Value = Af;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if Low < LowValue then
{
LowValue = Low;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
}
CSarv = SAR_Value;
}
else
{
if Direction == 0 then
{
if Close > Close[1] then Direction = 1;
else
if Close < Close[1] then Direction = -1;
}
else
{
if Direction == 1 then
{
if Close < Close[1] then
{
Direction = -1;
SAR_Value = HighValue;
CSarv = SAR_Value;
}
}
if Direction == -1 then
{
if Close > Close[1] then
{
Direction = 1;
SAR_Value = LowValue;
CSarv = SAR_Value;
}
}
}
LowValue = min(Low, LowValue);
HighValue = max(High, HighValue);
}
}
Plot1(CSarv,"파라볼릭종가",iff(C>CSarv,RED,BLUE));
----------------------------------------------------------
아래 수식은 당일 고저가 진폭을 나타내는 수식입니다!
지난번처럼 제 임의로 간격이 당일 고가에서 위로, 당일 저가에서 아래로 간격을
조정할 수 있도록 부탁드립니다!
if Bdate != Bdate[1] Then
Condition1 = False;
if Condition1 == False and DayHigh >= daylow+1 then
{
Condition1 = true;
var1 = Text_New(sdate,stime,DayHigh,"당일고가 : "+NumToStr(DayHigh,2)+" 진폭 : "+NumToStr(DayHigh-daylow,2));
var2 = Text_New(sdate,stime,Daylow,"당일저가 : "+NumToStr(Daylow,2)+" 진폭 : "+NumToStr(DayHigh-daylow,2));
}
if Condition1 == true Then
{
Text_SetString(var1,NumToStr(DayHigh,2)+" 진폭 : "+NumToStr(DayHigh-daylow,2));
Text_SetString(var2,NumToStr(Daylow,2)+" 진폭 : "+NumToStr(DayHigh-daylow,2));
Text_SetLocation(var1,sDate,sTime,DayHigh);
Text_SetLocation(var2,sDate,sTime,DayLow);
plot1(DayHigh);
plot2(daylow);
plot3((DayHigh)-0.65);
plot4((daylow)+0.65);
}
Else
{
NoPlot(1);
NoPlot(2);
}
2021-09-08
741
글번호 152069
지표
답변완료
수식수정요청
안녕하세요
아래의 좌 우 수식에서 4개의 선을 다섯개의 선으로 수정부탁드립니다.
input : af(0.02), maxAF(0.2),추세선두께(1),추세선색1(YELLOW),추세선색2(CYAN),연장선두께(2),연장선색(gray);
input : 텍스트출력(1);
var : T(0),HH(0),LL(0),HD(0),HT(0),LD(0),LT(0);
var : HH1(0),LL1(0),HD1(0),HT1(0),LD1(0),LT1(0);
var : TL1(0),TL2(0),cnt(0),count(0);
var : TL3(0),TL4(0),TL5(0),TL6(0),tx1(0),tx2(0),tx11(0),tx22(0);
Var : TL11(0),TL22(0);
var1 = CSar(af,maxAF);
if crossup(c,var1) Then
{
T = 1;
HH = H;
HD = sdate;
HT = stime;
HH1 = HH[1];
HD1 = HD[1];
HT1 = HT[1];
if LL > 0 Then
{
#TL1 = TL_new(LD[1],LT[1],LL[1],HD,HT,HH);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL3 = TL_new(HD[1],HT[1],HH[1],sdate,stime,HH[1]);
TL4 = TL_new(HD[1],HT[1],(HH[1]+LL)/2,sdate,stime,(HH[1]+LL)/2);
TL5 = TL_new(HD[1],HT[1],LL,sdate,stime,LL);
TL6 = TL_new(HD[1],HT[1],HH[1]+(HH[1]-LL[1])/2,sdate,stime,HH[1]+(HH[1]-LL)/2);
//추세선 오른쪽 연장설정
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
/* if 텍스트출력 == 1 then
{
Tx11 = Text_New(HD1,HT1,HH1,NumToStr((HH1-LL1)/PriceScale,0)+NewLine+NumToStr(HH1,2));
Text_SetStyle(tx11,2,1);
Text_Delete(tx1);
Tx1 = Text_New(HD,HT,HH,NumToStr((HH-LL[1])/PriceScale,0)+NewLine+NumToStr(HH,2));
Text_SetStyle(tx1,2,1);
}*/
}
#TL11 = TL_New(HD1,HT1,HH1,HD,HT,HH);
}
if CrossDown(c,var1) Then
{
T = -1;
LL = L;
LD = sdate;
LT = stime;
LL1 = LL[1];
LD1 = LD[1];
LT1 = LT[1];
if HH > 0 Then
{
#TL2 = TL_new(HD[1],HT[1],HH[1],LD,LT,LL);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL3 = TL_new(LD[1],LT[1],HH,sdate,stime,HH);
TL4 = TL_new(LD[1],LT[1],(HH+LL[1])/2,sdate,stime,(HH+LL[1])/2);
TL5 = TL_new(LD[1],LT[1],LL[1],sdate,stime,LL[1]);
TL6 = TL_new(LD[1],LT[1],LL[1]-(HH-LL[1])/2,sdate,stime,LL[1]-(HH-LL[1])/2);
//추세선 오른쪽 연장설정
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
/* if 텍스트출력 == 1 then
{
Tx22 = Text_New(LD1,LT1,LL1,NumToStr((HH1-LL1)/PriceScale,0)+NewLine+NumToStr(LL1,2));
Text_SetStyle(tx22,2,0);
Text_Delete(tx2);
Tx2 = Text_New(LD,LT,LL,NumToStr((HH[1]-LL)/PriceScale,0)+NewLine+NumToStr(LL,2));
Text_SetStyle(tx2,2,0);
}*/
}
#TL22 = TL_New(LD1,LT1,LL1,LD,LT,LL);
}
if T == 1 then
{
if H > HH Then
{
HH = H;
HD = sdate;
HT = stime;
TL_SetEnd(TL1,HD,HT,HH);
TL_SetEnd(TL11,HD,HT,HH);
/* if 텍스트출력 == 1 then
{
Text_Delete(tx1);
Tx1 = Text_New(HD,HT,HH,NumToStr((HH-LL[1])/PriceScale,0)+NewLine+NumToStr(HH,2));
Text_SetStyle(tx1,2,1);
}*/
}
}
if T == -1 then
{
if L < LL Then
{
LL = L;
LD = sdate;
LT = stime;
TL_SetEnd(TL2,LD,LT,LL);
TL_SetEnd(TL22,LD,LT,LL);
/* if 텍스트출력 == 1 then
{
Text_Delete(tx2);
Tx2 = Text_New(LD,LT,LL,NumToStr((HH[1]-LL)/PriceScale,0)+NewLine+NumToStr(LL,2));
Text_SetStyle(tx2,2,0);
}*/
}
}
#추세선 두께, 색상
TL_SetSize(TL1,추세선두께);
TL_SetSize(TL11,추세선두께);
TL_SetSize(TL2,추세선두께);
TL_SetSize(TL22,추세선두께);
TL_SetColor(TL1,추세선색1);
TL_SetColor(TL11,추세선색1);
TL_SetColor(TL2,추세선색2);
TL_SetColor(TL22,추세선색2);
#연장선 두께, 색상
TL_SetSize(TL3,연장선두께);
TL_SetSize(TL4,연장선두께);
TL_SetSize(TL5,연장선두께);
TL_SetSize(TL6,연장선두께);
TL_SetColor(TL3,연장선색);
TL_SetColor(TL4,연장선색);
TL_SetColor(TL5,연장선색);
TL_SetColor(TL6,연장선색);
2021-09-07
775
글번호 152067
지표
답변완료
수식수정좀부탁드립니다
아래지표중 일괄매도 변수조건조정좀할수잇게해주세요 지금진입조건이 엔벨로프20-3하단진입이고 일괄매도가20-3중앙선돌파시일괄매도로되잇잔아요 이일괄매도조건을예를들어 30-5상향선상향돌파시 일괄매도 이런식으로 조건수정좀하게해주세요
Input : Period(20), Percent(3);
input : M1(10000),M2(10000),M3(20000),M4(40000),M5(80000),M6(160000),M7(320000),M8(640000),M9(1280000),M10(2560000);
var : center(0),UPline(0),DNline(0);
center = ma(C, Period);
UPline = EnvelopeUp(Period, Percent);
Dnline = EnvelopeDown(Period, Percent);
if MarketPosition == 0 and CrossDown(C,DnLine) Then
Buy("b1",OnClose,DEF,M1/C);
if MarketPosition == 1 Then
{
if CurrentEntries == 1 Then
Buy("b2",AtLimit,AvgEntryPrice*0.98,M2/min(nextbaropen,AvgEntryPrice*0.98));
if CurrentEntries == 2 Then
Buy("b3",AtLimit,AvgEntryPrice*0.95,M3/min(nextbaropen,AvgEntryPrice*0.95));
if CurrentEntries == 3 Then
Buy("b4",AtLimit,AvgEntryPrice*0.90,M4/min(nextbaropen,AvgEntryPrice*0.90));
if CurrentEntries == 4 Then
Buy("b5",AtLimit,AvgEntryPrice*0.85,M5/min(nextbaropen,AvgEntryPrice*0.85));
if CurrentEntries == 5 Then
Buy("b6",AtLimit,AvgEntryPrice*0.80,M6/min(nextbaropen,AvgEntryPrice*0.80));
if CurrentEntries == 6 Then
Buy("b7",AtLimit,AvgEntryPrice*0.75,M7/min(nextbaropen,AvgEntryPrice*0.75));
if CurrentEntries == 7 Then
Buy("b8",AtLimit,AvgEntryPrice*0.70,M8/min(nextbaropen,AvgEntryPrice*0.70));
if CurrentEntries == 8 Then
Buy("b9",AtLimit,AvgEntryPrice*0.65,M9/min(nextbaropen,AvgEntryPrice*0.65));
if CurrentEntries == 9 Then
Buy("b10",AtLimit,AvgEntryPrice*0.60,M10/min(nextbaropen,AvgEntryPrice*0.60));
if CrossUp(c,center) Then <<<<<<<요기이매도조건변수기간수정좀하게해주세요
ExitLong();
if CurrentContracts > CurrentContracts[1] Then
{
if LatestEntryName(0) == "b4" Then
Var4 = LatestEntryPrice(0);
if LatestEntryName(0) == "b5" Then
Var5 = LatestEntryPrice(0);
if LatestEntryName(0) == "b6" Then
Var6 = LatestEntryPrice(0);
if LatestEntryName(0) == "b7" Then
Var7 = LatestEntryPrice(0);
if LatestEntryName(0) == "b8" Then
Var8 = LatestEntryPrice(0);
if LatestEntryName(0) == "b9" Then
Var9 = LatestEntryPrice(0);
if LatestEntryName(0) == "b10" Then
Var10 = LatestEntryPrice(0);
}
if CurrentContracts < CurrentContracts[1] Then
{
if LatestExitName(0) == "bx4" Then
Var4 = 0;
if LatestExitName(0) == "bx5" Then
Var5 = 0;
if LatestExitName(0) == "bx6" Then
Var6 = 0;
if LatestExitName(0) == "bx7" Then
Var7 = 0;
if LatestExitName(0) == "bx8" Then
Var8 = 0;
if LatestExitName(0) == "bx9" Then
Var9 = 0;
if LatestExitName(0) == "bx10" Then
Var10 = 0;
}
if var4 > 0 Then
ExitLong("bx4",AtLimit,Var4*1.05,"b4");
if var5 > 0 Then
ExitLong("bx5",AtLimit,Var5*1.05,"b5");
if var6 > 0 Then
ExitLong("bx6",AtLimit,Var6*1.05,"b6");
if var7 > 0 Then
ExitLong("bx7",AtLimit,Var7*1.05,"b7");
if var8 > 0 Then
ExitLong("bx8",AtLimit,Var8*1.05,"b8");
if var9 > 0 Then
ExitLong("bx9",AtLimit,Var9*1.05,"b9");
if var10 > 0 Then
ExitLong("bx10",AtLimit,Var10*1.05,"b10");
}
Else
{
var4 = 0;
var5 = 0;
var6 = 0;
var7 = 0;
var8 = 0;
var9 = 0;
var10 = 0;
}
2021-09-06
746
글번호 152062
시스템