커뮤니티

부탁 드립니다.

프로필 이미지
yes
2016-08-02 09:48:07
118
글번호 100602
답변완료
48923 관련 추가 질문 입니다. 질문1) 아래 마지막줄에서 다섯번째 PLOT1(DAYOPEN); 를 추가 한결과 아침 7시부터 18:00까지만 지표가 나타 납니다. 아울러 지표가 00:00까지만 나타 납니다. 이것을 해선 영업시간(07:00~익일06:00)까지 나타 나도록 부탁 드립니다. 미리 감사 드립니다. Input:inDate(20160801); Var:j(0),date11(0),date12(0),time11(0),time12(0),TL1(0), date21(0),date22(0),time21(0),time22(0), hiVal(0),loVal(0),hiBar(0),loBar(0); Array:r[5](0),fr[5](0),TL2[5](0); r[0] = 0; r[1] = 0.236; r[2] = 0.50; r[3] = 0.764; r[4] = 1; if DayClose(1) > DayHigh(0) then { hiVal = DayClose(1); hiBar = DayIndex + 1; } else { hiVal = DayHigh(0); hiBar = _DayHighBar(0); } if DayClose(1) < DayLow(0) then { loVal = DayClose(1); loBar = DayIndex + 1; } else { loVal = DayLow(0); loBar = _DayLowBar(0); } if (Date == CurrentDate and inDate == 0) || Date == inDate then { if hiBar > loBar then { date11 = date[hiBar]; time11 = stime[hiBar]; date12 = date[loBar]; time12 = stime[loBar]; TL_Delete(TL1); TL1 = TL_New(date11,time11,hiVal,date12,time12,loVal); date21 = date[hiBar]; time21 = stime[hiBar]; date22 = date[0]; time22 = stime[0]; for j = 0 to 4 { fr[j] = hiVal - ((hiVal - loVal) * r[j]); TL_Delete(TL2[j]); TL2[j] = TL_New(date21,time21,fr[j],date22,time22,fr[j]); TL_SetColor(TL2[2],RED); TL_SetSize(TL2[2],3); } } else { date11 = date[loBar]; time11 = stime[loBar]; date12 = date[hiBar]; time12 = stime[hiBar]; TL_Delete(TL1); TL1 = TL_New(date11,time11,loVal,date12,time12,hiVal); date21 = date[loBar]; time21 = stime[loBar]; date22 = date[0]; time22 = stime[0]; for j = 0 to 4 { fr[j] = loVal + ((hiVal - loVal) * r[j]); TL_Delete(TL2[j]); TL2[j] = TL_New(date21,time21,fr[j],date22,time22,fr[j]); TL_SetColor(TL2[2],RED); TL_SetSize(TL2[2],3); PLOT1(DAYOPEN); } } } TL_SetSize(TL1,1); 질문2)같은 48923의 답변중 2,3번의 시스템식은 작동이 되지않아 수정 부탁 드립니다. 2 Input: p1(5),p3(10),p5(15); var : T1(0),T2(0),T3(0); var1=ma(c,p1); var2=ma(c,p3); var3=ma(c,p5); if var1>var1[1] then T1 = 1; else T1 = -1; if var2>var2[1] then T2 = 1; Else T2 = -1; if var3>var3[1] then T3 = 1; else T3 = -1; Condition1 = T1 == 1 and T2 == 1 and T3 == 1; Condition2 = T1 == -1 and T2 == -1 and T3 == -1; if Condition1 == true and Condition1[1] == false Then buy(); if MarketPosition == 1 and var1 == -1 and var2 == -1 Then exitlong(); 3 Input: p1(5),p3(10),p5(15); var : T1(0),T2(0),T3(0); var1=ma(c,p1); var2=ma(c,p3); var3=ma(c,p5); if var1>var1[1] then T1 = 1; else T1 = -1; if var2>var2[1] then T2 = 1; Else T2 = -1; if var3>var3[1] then T3 = 1; else T3 = -1; Condition1 = T1 == 1 and T2 == 1 and T3 == 1; Condition2 = T1 == -1 and T2 == -1 and T3 == -1; if Condition2 == true and Condition2[1] == false Then sell(); if MarketPosition == -1 and var1 == 1 and var2 == 1 Then ExitShort();
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-08-02 11:05:19

안녕하세요 예스스탁입니다. 1 PLOT1(DAYOPEN);이 if (Date == CurrentDate and inDate == 0) ||Date == inDate then { 위조건만족하고 else {) 일대만 동작합니다. 또한 currentdate는 컴퓨터의 날짜입니다. inDate에 날짜를 정하시면 해당 일에만 출력되고 inDate가 0이면 컴퓨터의 날짜와 봉의 날짜가 같은 날에만 출력됩니다. 해외선물에서 다른방법이 있지는 않습니다. 날짜를 지정할땐 영업일로 비교해 출력하셔야 합니다. Input:inDate(20160801); if (Date == CurrentDate and inDate == 0) || BDate == inDate then { PLOT1(DAYOPEN); } 아래는 수정한 식입니다. Input:inDate(20160801); Var:j(0),date11(0),date12(0),time11(0),time12(0),TL1(0), date21(0),date22(0),time21(0),time22(0), hiVal(0),loVal(0),hiBar(0),loBar(0); Array:r[5](0),fr[5](0),TL2[5](0); r[0] = 0; r[1] = 0.236; r[2] = 0.50; r[3] = 0.764; r[4] = 1; if DayClose(1) > DayHigh(0) then { hiVal = DayClose(1); hiBar = DayIndex + 1; } else { hiVal = DayHigh(0); hiBar = _DayHighBar(0); } if DayClose(1) < DayLow(0) then { loVal = DayClose(1); loBar = DayIndex + 1; } else { loVal = DayLow(0); loBar = _DayLowBar(0); } if (Date == CurrentDate and inDate == 0) || Date == inDate then { PLOT1(DAYOPEN); if hiBar > loBar then { date11 = date[hiBar]; time11 = stime[hiBar]; date12 = date[loBar]; time12 = stime[loBar]; TL_Delete(TL1); TL1 = TL_New(date11,time11,hiVal,date12,time12,loVal); date21 = date[hiBar]; time21 = stime[hiBar]; date22 = date[0]; time22 = stime[0]; for j = 0 to 4 { fr[j] = hiVal - ((hiVal - loVal) * r[j]); TL_Delete(TL2[j]); TL2[j] = TL_New(date21,time21,fr[j],date22,time22,fr[j]); TL_SetColor(TL2[2],RED); TL_SetSize(TL2[2],3); } } else { date11 = date[loBar]; time11 = stime[loBar]; date12 = date[hiBar]; time12 = stime[hiBar]; TL_Delete(TL1); TL1 = TL_New(date11,time11,loVal,date12,time12,hiVal); date21 = date[loBar]; time21 = stime[loBar]; date22 = date[0]; time22 = stime[0]; for j = 0 to 4 { fr[j] = loVal + ((hiVal - loVal) * r[j]); TL_Delete(TL2[j]); TL2[j] = TL_New(date21,time21,fr[j],date22,time22,fr[j]); TL_SetColor(TL2[2],RED); TL_SetSize(TL2[2],3); } } } TL_SetSize(TL1,1); 2 Input: p1(5),p3(10),p5(15); var : T1(0),T2(0),T3(0); var1=ma(c,p1); var2=ma(c,p3); var3=ma(c,p5); if var1>var1[1] then T1 = 1; else T1 = -1; if var2>var2[1] then T2 = 1; Else T2 = -1; if var3>var3[1] then T3 = 1; else T3 = -1; Condition1 = T1 == 1 and T2 == 1 and T3 == 1; Condition2 = T1 == -1 and T2 == -1 and T3 == -1; if Condition1 == true and Condition1[1] == false Then buy(); if MarketPosition == 1 and T1 == -1 and T2 == -1 Then exitlong(); 3 Input: p1(5),p3(10),p5(15); var : T1(0),T2(0),T3(0); var1=ma(c,p1); var2=ma(c,p3); var3=ma(c,p5); if var1>var1[1] then T1 = 1; else T1 = -1; if var2>var2[1] then T2 = 1; Else T2 = -1; if var3>var3[1] then T3 = 1; else T3 = -1; Condition1 = T1 == 1 and T2 == 1 and T3 == 1; Condition2 = T1 == -1 and T2 == -1 and T3 == -1; if Condition2 == true and Condition2[1] == false Then sell(); if MarketPosition == -1 and T1 == 1 and T2 == 1 Then ExitShort(); 즐거운 하루되세요 > yes 님이 쓴 글입니다. > 제목 : 부탁 드립니다. > 48923 관련 추가 질문 입니다. 질문1) 아래 마지막줄에서 다섯번째 PLOT1(DAYOPEN); 를 추가 한결과 아침 7시부터 18:00까지만 지표가 나타 납니다. 아울러 지표가 00:00까지만 나타 납니다. 이것을 해선 영업시간(07:00~익일06:00)까지 나타 나도록 부탁 드립니다. 미리 감사 드립니다. Input:inDate(20160801); Var:j(0),date11(0),date12(0),time11(0),time12(0),TL1(0), date21(0),date22(0),time21(0),time22(0), hiVal(0),loVal(0),hiBar(0),loBar(0); Array:r[5](0),fr[5](0),TL2[5](0); r[0] = 0; r[1] = 0.236; r[2] = 0.50; r[3] = 0.764; r[4] = 1; if DayClose(1) > DayHigh(0) then { hiVal = DayClose(1); hiBar = DayIndex + 1; } else { hiVal = DayHigh(0); hiBar = _DayHighBar(0); } if DayClose(1) < DayLow(0) then { loVal = DayClose(1); loBar = DayIndex + 1; } else { loVal = DayLow(0); loBar = _DayLowBar(0); } if (Date == CurrentDate and inDate == 0) || Date == inDate then { if hiBar > loBar then { date11 = date[hiBar]; time11 = stime[hiBar]; date12 = date[loBar]; time12 = stime[loBar]; TL_Delete(TL1); TL1 = TL_New(date11,time11,hiVal,date12,time12,loVal); date21 = date[hiBar]; time21 = stime[hiBar]; date22 = date[0]; time22 = stime[0]; for j = 0 to 4 { fr[j] = hiVal - ((hiVal - loVal) * r[j]); TL_Delete(TL2[j]); TL2[j] = TL_New(date21,time21,fr[j],date22,time22,fr[j]); TL_SetColor(TL2[2],RED); TL_SetSize(TL2[2],3); } } else { date11 = date[loBar]; time11 = stime[loBar]; date12 = date[hiBar]; time12 = stime[hiBar]; TL_Delete(TL1); TL1 = TL_New(date11,time11,loVal,date12,time12,hiVal); date21 = date[loBar]; time21 = stime[loBar]; date22 = date[0]; time22 = stime[0]; for j = 0 to 4 { fr[j] = loVal + ((hiVal - loVal) * r[j]); TL_Delete(TL2[j]); TL2[j] = TL_New(date21,time21,fr[j],date22,time22,fr[j]); TL_SetColor(TL2[2],RED); TL_SetSize(TL2[2],3); PLOT1(DAYOPEN); } } } TL_SetSize(TL1,1); 질문2)같은 48923의 답변중 2,3번의 시스템식은 작동이 되지않아 수정 부탁 드립니다. 2 Input: p1(5),p3(10),p5(15); var : T1(0),T2(0),T3(0); var1=ma(c,p1); var2=ma(c,p3); var3=ma(c,p5); if var1>var1[1] then T1 = 1; else T1 = -1; if var2>var2[1] then T2 = 1; Else T2 = -1; if var3>var3[1] then T3 = 1; else T3 = -1; Condition1 = T1 == 1 and T2 == 1 and T3 == 1; Condition2 = T1 == -1 and T2 == -1 and T3 == -1; if Condition1 == true and Condition1[1] == false Then buy(); if MarketPosition == 1 and var1 == -1 and var2 == -1 Then exitlong(); 3 Input: p1(5),p3(10),p5(15); var : T1(0),T2(0),T3(0); var1=ma(c,p1); var2=ma(c,p3); var3=ma(c,p5); if var1>var1[1] then T1 = 1; else T1 = -1; if var2>var2[1] then T2 = 1; Else T2 = -1; if var3>var3[1] then T3 = 1; else T3 = -1; Condition1 = T1 == 1 and T2 == 1 and T3 == 1; Condition2 = T1 == -1 and T2 == -1 and T3 == -1; if Condition2 == true and Condition2[1] == false Then sell(); if MarketPosition == -1 and var1 == 1 and var2 == 1 Then ExitShort();