커뮤니티

부탁좀 드리겠습니다.

프로필 이미지
더월
2020-03-03 15:44:41
348
글번호 136526
답변완료
도움주셔서 감사합니다 아래의 수식을 시스템식으로 부탁드립니다 매수신호는 신호캔들 최저가에 선과 수치가 표시되고 매도신호는 신호캔들 최고가에 선과 수치가 표시되었으면 합니다. input : P(22),n(3); var : AvgTR(0),BasicUpper(0),BasicLower(0); var : FinalUpper(0),FinalLower(0),SuperTrend(0); var : tx1(0),T(0); AvgTR = ATR(P); BasicUpper = (H+L)/2 + (AvgTR*n); BasicLower = (H+L)/2 - (AvgTR*n); if IsNaN(FinalUpper) == true or BasicUpper < FinalUpper or C[1] > FinalUpper then FinalUpper = BasicUpper; else FinalUpper = FinalUpper; if IsNaN(FinalLower) == true or BasicLower > FinalLower[1] or C[1] < FinalLower[1] then FinalLower = BasicLower; else FinalLower = FinalLower; SuperTrend = IfF(SuperTrend == FinalUpper[1] and Close[0] <= FinalUpper[0], FinalUpper[0], IfF(SuperTrend == FinalUpper[1] and Close[0] >= FinalUpper[0],FinalLower[0], IfF(SuperTrend == FinalLower[1] and Close[0]>=FinalLower[0],FinalLower[0], IfF(SuperTrend == FinalLower[1] and Close[0]<=FinalLower[0],FinalUpper[0],0)))); if SuperTrend > SuperTrend[1] then T = 1; if SuperTrend < SuperTrend[1] Then T = -1; plot3(SuperTrend,"SuperTrend",iff(T == 1,RED,BLUE));
시스템
답변 4
프로필 이미지

예스스탁 예스스탁 답변

2020-03-03 16:50:19

안녕하세요 예스스탁입니다. 매수신호와 매도신호가 어떤 조건인지 불명확합니다. 파란색에서 빨간색으로 변경되면 매수, 빨간색에서 파란색으로 변경되면 매도로 작성했습니다. input : P(22),n(3); var : AvgTR(0),BasicUpper(0),BasicLower(0); var : FinalUpper(0),FinalLower(0),SuperTrend(0); var : T(0),TL1(0),TL2(0),TX1(0),TX2(0); AvgTR = ATR(P); BasicUpper = (H+L)/2 + (AvgTR*n); BasicLower = (H+L)/2 - (AvgTR*n); if IsNaN(FinalUpper) == true or BasicUpper < FinalUpper or C[1] > FinalUpper then FinalUpper = BasicUpper; else FinalUpper = FinalUpper; if IsNaN(FinalLower) == true or BasicLower > FinalLower[1] or C[1] < FinalLower[1] then FinalLower = BasicLower; else FinalLower = FinalLower; SuperTrend = IfF(SuperTrend == FinalUpper[1] and Close[0] <= FinalUpper[0], FinalUpper[0], IfF(SuperTrend == FinalUpper[1] and Close[0] >= FinalUpper[0],FinalLower[0], IfF(SuperTrend == FinalLower[1] and Close[0]>=FinalLower[0],FinalLower[0], IfF(SuperTrend == FinalLower[1] and Close[0]<=FinalLower[0],FinalUpper[0],0)))); if SuperTrend > SuperTrend[1] then T = 1; if SuperTrend < SuperTrend[1] Then T = -1; if MarketPosition <= 0 and T == 1 and T != T[1] Then { buy("b"); var1 = L; TL1 = TL_New(sdate,stime,var1,NextBarSdate,NextBarStime,var1); TL_SetColor(TL1,RED); TX1 = Text_New(NextBarSdate,NextBarStime,var1,NumToStr(var1,2)); Text_SetStyle(TX1,0,0); } if MarketPosition >= 0 and T == -1 and T != T[1] Then { sell("s"); var2 = H; TL2 = TL_New(sdate,stime,var2,NextBarSdate,var2,var2); TL_SetColor(TL2,BLUE); TX2 = Text_New(NextBarSdate,NextBarStime,var2,NumToStr(var2,2)); Text_SetStyle(TX2,0,1); } if MarketPosition == 1 Then TL_SetEnd(TL1,NextBarSdate,NextBarStime,var1); if MarketPosition == -1 Then TL_SetEnd(TL2,NextBarSdate,NextBarStime,var2); 즐거운 하루되세요 > 더월 님이 쓴 글입니다. > 제목 : 부탁좀 드리겠습니다. > 도움주셔서 감사합니다 아래의 수식을 시스템식으로 부탁드립니다 매수신호는 신호캔들 최저가에 선과 수치가 표시되고 매도신호는 신호캔들 최고가에 선과 수치가 표시되었으면 합니다. input : P(22),n(3); var : AvgTR(0),BasicUpper(0),BasicLower(0); var : FinalUpper(0),FinalLower(0),SuperTrend(0); var : tx1(0),T(0); AvgTR = ATR(P); BasicUpper = (H+L)/2 + (AvgTR*n); BasicLower = (H+L)/2 - (AvgTR*n); if IsNaN(FinalUpper) == true or BasicUpper < FinalUpper or C[1] > FinalUpper then FinalUpper = BasicUpper; else FinalUpper = FinalUpper; if IsNaN(FinalLower) == true or BasicLower > FinalLower[1] or C[1] < FinalLower[1] then FinalLower = BasicLower; else FinalLower = FinalLower; SuperTrend = IfF(SuperTrend == FinalUpper[1] and Close[0] <= FinalUpper[0], FinalUpper[0], IfF(SuperTrend == FinalUpper[1] and Close[0] >= FinalUpper[0],FinalLower[0], IfF(SuperTrend == FinalLower[1] and Close[0]>=FinalLower[0],FinalLower[0], IfF(SuperTrend == FinalLower[1] and Close[0]<=FinalLower[0],FinalUpper[0],0)))); if SuperTrend > SuperTrend[1] then T = 1; if SuperTrend < SuperTrend[1] Then T = -1; plot3(SuperTrend,"SuperTrend",iff(T == 1,RED,BLUE));
프로필 이미지

더월

2020-03-03 16:02:30

저가와 고가 수치가 이상한데 뜸니다 확인좀 부탁드립니다. 또한 선이 세로로도 그려지네요?
프로필 이미지

더월

2020-03-03 16:51:52

if (sdate != sdate[1] and stime >= 233000) or (sdate == sdate[1] and stime >= 233000 and stime[1] < 233000) Then { var1 = h; var2 = l; var11 = var1[1]; var22 = var2[1]; var33 = var3[1]; } if h > var1 Then var1 = h ; if l < var2 Then var2 = l; var3 = var1-var2; if var11 > 0 and var22 > 0 then { plot1(var22+var33*0.000,"기준"); plot2(var22+var33*0.118,"+118"); plot3(var22+var33*0.236,"+236"); plot4(var22+var33*0.382,"+382"); plot5(var22+var33*0.500,"+500"); plot6(var22+var33*0.618,"+618"); plot7(var22+var33*0.764,"+764"); plot8(var22+var33*0.882,"+882"); plot9(var22+var33*1.000,"+100"); plot10(var22+var33*1.236,"+1.236"); plot11(var22+var33*1.382,"+1.382"); plot12(var22+var33*1.500,"+1.500"); plot13(var22+var33*1.618,"+1.618"); plot14(var22+var33*1.764,"+1.764"); plot15(var22+var33*2.000,"+2.000"); plot16(var22-var33*0.236,"-236"); plot17(var22-var33*0.382,"-382"); plot18(var22-var33*0.500,"-500"); plot19(var22-var33*0.618,"-618"); plot20(var22-var33*1.000,"-100"); Text_Delete(value1); Text_Delete(value2); Text_Delete(value3); Text_Delete(value4); Text_Delete(value5); Text_Delete(value6); Text_Delete(value7); Text_Delete(value8); Text_Delete(value9); Text_Delete(value10); Text_Delete(value11); Text_Delete(value12); Text_Delete(value13); Text_Delete(value14); Text_Delete(value15); Text_Delete(value16); Text_Delete(value17); Text_Delete(value18); Text_Delete(value19); Text_Delete(value20); value1 = Text_New(sdate,stime,var22+var33*0.000,"+0%"); value2 = Text_New(sdate,stime,var22+var33*0.118,"+11.8%"); value3 = Text_New(sdate,stime,var22+var33*0.236,"+23.6%"); value4 = Text_New(sdate,stime,var22+var33*0.382,"+38.2%"); value5 = Text_New(sdate,stime,var22+var33*0.500,"+50.0%"); value6 = Text_New(sdate,stime,var22+var33*0.618,"+61.8%"); value7 = Text_New(sdate,stime,var22+var33*0.764,"+76.4%"); value8 = Text_New(sdate,stime,var22+var33*0.882,"+88.2%"); value9 = Text_New(sdate,stime,var22+var33*1.000,"+100.0%"); value10 = Text_New(sdate,stime,var22+var33*1.236,"+123.6%"); value11 = Text_New(sdate,stime,var22+var33*1.382,"+138.2%"); value12 = Text_New(sdate,stime,var22+var33*1.500,"+150.0%"); value13 = Text_New(sdate,stime,var22+var33*1.618,"+161.8%"); value14 = Text_New(sdate,stime,var22+var33*1.764,"+176.4%"); value15 = Text_New(sdate,stime,var22+var33*2.000,"+200.%"); value16 = Text_New(sdate,stime,var22-var33*0.236,"-23.6%"); value17 = Text_New(sdate,stime,var22-var33*0.382,"-38.2%"); value18 = Text_New(sdate,stime,var22-var33*0.500,"-50.0%"); value19 = Text_New(sdate,stime,var22-var33*0.618,"-61.8%"); value20 = Text_New(sdate,stime,var22-var33*1.000,"-100.0%"); }
프로필 이미지

예스스탁 예스스탁 답변

2020-03-03 17:11:30

안녕하세요 예스스탁입니다. 최대한 오른쪽으로 정렬하게 작성해 드립니다. 만약 해당식으로 봉이 가려지면 value1 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.000," "+"+0.0%:"+NumToStr(var22+var33*0.000,표시소숫점자리수)); 위와 같은 출력문에서 " "+"+0.0%:"+NumToStr(var22+var33*0.000,표시소숫점자리수) 가 출력문을 지정하는 부분입니다. 제일 앞에 " "안에 스페이스를 더 많이 주시면 됩니다. 만약에 차트 오른쪽 여백이 좁아서 글자가 다 표시가 안되시면 차트창속성의 기타탭에서 X축여백을 늘려주시면 됩니다. 차트창 속성은 차트에서 바탕화면을 더블클릭하면 나타납니다. 아래식과 이전식을 비교해 보시기 바랍니다. input : 표시소숫점자리수(2); if (sdate != sdate[1] and stime >= 233000) or (sdate == sdate[1] and stime >= 233000 and stime[1] < 233000) Then { var1 = h; var2 = l; var11 = var1[1]; var22 = var2[1]; var33 = var3[1]; } if h > var1 Then var1 = h ; if l < var2 Then var2 = l; var3 = var1-var2; if var11 > 0 and var22 > 0 then { plot1(var22+var33*0.000,"기준"); plot2(var22+var33*0.118,"+118"); plot3(var22+var33*0.236,"+236"); plot4(var22+var33*0.382,"+382"); plot5(var22+var33*0.500,"+500"); plot6(var22+var33*0.618,"+618"); plot7(var22+var33*0.764,"+764"); plot8(var22+var33*0.882,"+882"); plot9(var22+var33*1.000,"+100"); plot10(var22+var33*1.236,"+1.236"); plot11(var22+var33*1.382,"+1.382"); plot12(var22+var33*1.500,"+1.500"); plot13(var22+var33*1.618,"+1.618"); plot14(var22+var33*1.764,"+1.764"); plot15(var22+var33*2.000,"+2.000"); plot16(var22-var33*0.236,"-236"); plot17(var22-var33*0.382,"-382"); plot18(var22-var33*0.500,"-500"); plot19(var22-var33*0.618,"-618"); plot20(var22-var33*1.000,"-100"); Text_Delete(value1); Text_Delete(value2); Text_Delete(value3); Text_Delete(value4); Text_Delete(value5); Text_Delete(value6); Text_Delete(value7); Text_Delete(value8); Text_Delete(value9); Text_Delete(value10); Text_Delete(value11); Text_Delete(value12); Text_Delete(value13); Text_Delete(value14); Text_Delete(value15); Text_Delete(value16); Text_Delete(value17); Text_Delete(value18); Text_Delete(value19); Text_Delete(value20); value1 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.000," +0.0%:"+NumToStr(var22+var33*0.000,표시소숫점자리수)); value2 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.118," +11.8%:"+NumToStr(var22+var33*0.118,표시소숫점자리수)); value3 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.236," +23.6%:"+NumToStr(var22+var33*0.236,표시소숫점자리수)); value4 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.382," +38.2%:"+NumToStr(var22+var33*0.382,표시소숫점자리수)); value5 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.500," +50.0%:"+NumToStr(var22+var33*0.500,표시소숫점자리수)); value6 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.618," +61.8%:"+NumToStr(var22+var33*0.618,표시소숫점자리수)); value7 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.764," +76.4%:"+NumToStr(var22+var33*0.764,표시소숫점자리수)); value8 = Text_New(NextBarSdate,NextBarStime,var22+var33*0.882," +88.2%:"+NumToStr(var22+var33*0.882,표시소숫점자리수)); value9 = Text_New(NextBarSdate,NextBarStime,var22+var33*1.000," +100.0%:"+NumToStr(var22+var33*1.000,표시소숫점자리수)); value10 = Text_New(NextBarSdate,NextBarStime,var22+var33*1.236," +123.6%:"+NumToStr(var22+var33*1.236,표시소숫점자리수)); value11 = Text_New(NextBarSdate,NextBarStime,var22+var33*1.382," +138.2%:"+NumToStr(var22+var33*1.382,표시소숫점자리수)); value12 = Text_New(NextBarSdate,NextBarStime,var22+var33*1.500," +150.0%:"+NumToStr(var22+var33*1.500,표시소숫점자리수)); value13 = Text_New(NextBarSdate,NextBarStime,var22+var33*1.618," +161.8%:"+NumToStr(var22+var33*1.618,표시소숫점자리수)); value14 = Text_New(NextBarSdate,NextBarStime,var22+var33*1.764," +176.4%:"+NumToStr(var22+var33*1.764,표시소숫점자리수)); value15 = Text_New(NextBarSdate,NextBarStime,var22+var33*2.000," +200.%:"+NumToStr(var22+var33*2.000,표시소숫점자리수)); value16 = Text_New(NextBarSdate,NextBarStime,var22-var33*0.236," -23.6%:"+NumToStr(var22-var33*0.236,표시소숫점자리수)); value17 = Text_New(NextBarSdate,NextBarStime,var22-var33*0.382," -38.2%:"+NumToStr(var22-var33*0.382,표시소숫점자리수)); value18 = Text_New(NextBarSdate,NextBarStime,var22-var33*0.500," -50.0%:"+NumToStr(var22-var33*0.500,표시소숫점자리수)); value19 = Text_New(NextBarSdate,NextBarStime,var22-var33*0.618," -61.8%:"+NumToStr(var22-var33*0.618,표시소숫점자리수)); value20 = Text_New(NextBarSdate,NextBarStime,var22-var33*1.000," -100.0%:"+NumToStr(var22-var33*0.000,표시소숫점자리수)); Text_SetStyle(value1,0,0); //우측정렬, 아래정렬 Text_SetStyle(value2,0,0); Text_SetStyle(value3,0,0); Text_SetStyle(value4,0,0); Text_SetStyle(value5,0,0); Text_SetStyle(value6,0,0); Text_SetStyle(value7,0,0); Text_SetStyle(value8,0,0); Text_SetStyle(value9,0,0); Text_SetStyle(value10,0,0); Text_SetStyle(value11,0,0); Text_SetStyle(value12,0,0); Text_SetStyle(value13,0,0); Text_SetStyle(value14,0,0); Text_SetStyle(value15,0,0); Text_SetStyle(value16,0,0); Text_SetStyle(value17,0,0); Text_SetStyle(value18,0,0); Text_SetStyle(value19,0,0); Text_SetStyle(value20,0,0); } 즐거운 하루되세요 > 더월 님이 쓴 글입니다. > 제목 : Re : 확인좀 부탁드립니다. > if (sdate != sdate[1] and stime >= 233000) or (sdate == sdate[1] and stime >= 233000 and stime[1] < 233000) Then { var1 = h; var2 = l; var11 = var1[1]; var22 = var2[1]; var33 = var3[1]; } if h > var1 Then var1 = h ; if l < var2 Then var2 = l; var3 = var1-var2; if var11 > 0 and var22 > 0 then { plot1(var22+var33*0.000,"기준"); plot2(var22+var33*0.118,"+118"); plot3(var22+var33*0.236,"+236"); plot4(var22+var33*0.382,"+382"); plot5(var22+var33*0.500,"+500"); plot6(var22+var33*0.618,"+618"); plot7(var22+var33*0.764,"+764"); plot8(var22+var33*0.882,"+882"); plot9(var22+var33*1.000,"+100"); plot10(var22+var33*1.236,"+1.236"); plot11(var22+var33*1.382,"+1.382"); plot12(var22+var33*1.500,"+1.500"); plot13(var22+var33*1.618,"+1.618"); plot14(var22+var33*1.764,"+1.764"); plot15(var22+var33*2.000,"+2.000"); plot16(var22-var33*0.236,"-236"); plot17(var22-var33*0.382,"-382"); plot18(var22-var33*0.500,"-500"); plot19(var22-var33*0.618,"-618"); plot20(var22-var33*1.000,"-100"); Text_Delete(value1); Text_Delete(value2); Text_Delete(value3); Text_Delete(value4); Text_Delete(value5); Text_Delete(value6); Text_Delete(value7); Text_Delete(value8); Text_Delete(value9); Text_Delete(value10); Text_Delete(value11); Text_Delete(value12); Text_Delete(value13); Text_Delete(value14); Text_Delete(value15); Text_Delete(value16); Text_Delete(value17); Text_Delete(value18); Text_Delete(value19); Text_Delete(value20); value1 = Text_New(sdate,stime,var22+var33*0.000,"+0%"); value2 = Text_New(sdate,stime,var22+var33*0.118,"+11.8%"); value3 = Text_New(sdate,stime,var22+var33*0.236,"+23.6%"); value4 = Text_New(sdate,stime,var22+var33*0.382,"+38.2%"); value5 = Text_New(sdate,stime,var22+var33*0.500,"+50.0%"); value6 = Text_New(sdate,stime,var22+var33*0.618,"+61.8%"); value7 = Text_New(sdate,stime,var22+var33*0.764,"+76.4%"); value8 = Text_New(sdate,stime,var22+var33*0.882,"+88.2%"); value9 = Text_New(sdate,stime,var22+var33*1.000,"+100.0%"); value10 = Text_New(sdate,stime,var22+var33*1.236,"+123.6%"); value11 = Text_New(sdate,stime,var22+var33*1.382,"+138.2%"); value12 = Text_New(sdate,stime,var22+var33*1.500,"+150.0%"); value13 = Text_New(sdate,stime,var22+var33*1.618,"+161.8%"); value14 = Text_New(sdate,stime,var22+var33*1.764,"+176.4%"); value15 = Text_New(sdate,stime,var22+var33*2.000,"+200.%"); value16 = Text_New(sdate,stime,var22-var33*0.236,"-23.6%"); value17 = Text_New(sdate,stime,var22-var33*0.382,"-38.2%"); value18 = Text_New(sdate,stime,var22-var33*0.500,"-50.0%"); value19 = Text_New(sdate,stime,var22-var33*0.618,"-61.8%"); value20 = Text_New(sdate,stime,var22-var33*1.000,"-100.0%"); }