Hi funyoo.
I am not a coder at all
Can you fix the code below for three time session
here is your code tried to modify for three time session but if select true more than one session
does not trade at all but if i select one session true out of three then work fine
sorry for my poor english
extern string timefilter="Time Filter";
extern int gmtshift=1; // gmt offset of the broker
extern bool Trade_Asian_market=false; // enable time filter
extern int starthour=7; // start hour to trade after this hour
extern int startminutes=0; // minutes of the start hour
extern int endhour=21; // stop to trade after this hour
extern int endminutes=0; // minutes of the start hour
extern bool Trade_Euro_market=false; // enable time filter
extern int starthour2=7; // start hour to trade after this hour
extern int startminutes2=0; // minutes of the start hour
extern int endhour2=21; // stop to trade after this hour
extern int endminutes2=0; // minutes of the start hour
extern bool Trade_Ny_market=false; // enable time filter
extern int starthour3=5; // start hour to trade after this hour
extern int startminutes3=0; // minutes of the start hour
extern int endhour3=20; // stop to trade after this hour
extern int endminutes3=0; // minutes of the start hour
int nstarthour,nendhour,nstarthour2,nendhour2,nstartho ur3,nendhour3,nfridayhour;
string istarthour,istartminutes,iendhour,iendminutes,ista rthour2,istartminutes2,iendhour2,iendminutes2,ista rthour3,istartminutes3,iendhour3,iendminutes3,ifri dayhour,ifridayminutes;
datetime tstart,tend,tstart2,tend2,tstart3,tend3,tfriday;
if(Trade_Asian_market){
nstarthour=starthour+(gmtshift);if(nstarthour>23)n starthour=nstarthour-24;
if(nstarthour<10)istarthour="0"+nstarthour;
if(nstarthour>9)istarthour=nstarthour;
if(startminutes<10)istartminutes="0"+startminutes;
if(startminutes>9)istartminutes=startminutes;
tstart=StrToTime(istarthour+":"+istartminutes);
nendhour=endhour+(gmtshift);if(nendhour>23)nendhou r=nendhour-24;
if(endhour<10)iendhour="0"+nendhour;
if(endhour>9)iendhour=nendhour;
if(endminutes<10)iendminutes="0"+endminutes;
if(endminutes>9)iendminutes=endminutes;
tend=StrToTime(iendhour+":"+iendminutes);
}
if(Trade_Euro_market){
nstarthour2=starthour2+(gmtshift);if(nstarthour2>2 3)nstarthour2=nstarthour2-24;
if(nstarthour2<10)istarthour2="0"+nstarthour2;
if(nstarthour2>9)istarthour2=nstarthour2;
if(startminutes2<10)istartminutes2="0"+startminute s2;
if(startminutes2>9)istartminutes2=startminutes2;
tstart2=StrToTime(istarthour2+":"+istartminutes2);
nendhour2=endhour2+(gmtshift);if(nendhour2>23)nend hour2=nendhour2-24;
if(endhour2<10)iendhour2="0"+nendhour2;
if(endhour2>9)iendhour2=nendhour2;
if(endminutes2<10)iendminutes2="0"+endminutes2;
if(endminutes2>9)iendminutes2=endminutes2;
tend2=StrToTime(iendhour2+":"+iendminutes2);
}
if(Trade_Ny_market){
nstarthour3=starthour3+(gmtshift);if(nstarthour3>2 3)nstarthour3=nstarthour3-24;
if(nstarthour3<10)istarthour3="0"+nstarthour3;
if(nstarthour3>9)istarthour3=nstarthour3;
if(startminutes3<10)istartminutes3="0"+startminute s3;
if(startminutes3>9)istartminutes3=startminutes3;
tstart3=StrToTime(istarthour3+":"+istartminutes3);
nendhour3=endhour3+(gmtshift);if(nendhour3>23)nend hour3=nendhour3-24;
if(endhour3<10)iendhour3="0"+nendhour3;
if(endhour3>9)iendhour3=nendhour3;
if(endminutes3<10)iendminutes3="0"+endminutes3;
if(endminutes3>9)iendminutes3=endminutes3;
tend3=StrToTime(iendhour3+":"+iendminutes3);
}
if(fridayfilter){
nfridayhour=fridayhour+(gmtshift);if(nfridayhour>2 3)nfridayhour=nfridayhour-24;
if(nfridayhour<10)ifridayhour="0"+nfridayhour;
if(nfridayhour>9)ifridayhour=nfridayhour;
if(fridayminutes<10)ifridayminutes="0"+fridayminut es;
if(fridayminutes>9)ifridayminutes=fridayminutes;
tfriday=StrToTime(ifridayhour+":"+ifridayminutes);
}
if((Trade_Asian_market && (nstarthour<nendhour && TimeCurrent()<tstart || TimeCurrent()>tend) || (nstarthour>nendhour && TimeCurrent()<tstart && TimeCurrent()>tend))
|| (tradesunday==false && DayOfWeek()==0) || (fridayfilter && DayOfWeek()==5 && TimeCurrent()>tfriday))
return(0);
if((Trade_Euro_market && (nstarthour2<nendhour2 && TimeCurrent()<tstart2 || TimeCurrent()>tend2) || (nstarthour2>nendhour2 && TimeCurrent()<tstart2 && TimeCurrent()>tend2))
|| (tradesunday==false && DayOfWeek()==0) || (fridayfilter && DayOfWeek()==5 && TimeCurrent()>tfriday))
return(0);
if((Trade_Ny_market && (nstarthour3<nendhour3 && TimeCurrent()<tstart3 || TimeCurrent()>tend3) || (nstarthour3>nendhour3 && TimeCurrent()<tstart3 && TimeCurrent()>tend3))
|| (tradesunday==false && DayOfWeek()==0) || (fridayfilter && DayOfWeek()==5 && TimeCurrent()>tfriday))
return(0);



Reply With Quote
