Miscellaneous
0
Views
0
Downloads
0
Favorites
sOptimisationDates
//+------------------------------------------------------------------+
//| sOptimisationDates.mq4 |
//| * |
//| * |
//+------------------------------------------------------------------+
#property copyright "http://dmffx.com"
#property link "http://dmffx.com"
#property show_inputs
extern int Shift = 0; // Îòñòóï â áàðàõ îò ïðàâîãî êðàÿ ãðàôèêà
int Step;
extern int CheckBars = 300; // Êîëè÷åñòâî áàðîâ íà êîòîðûõ ýêñïåðò "òîðãóåò" ïîñëå îïòèìèçàöèè
extern int OptimizationBars = 3000; // Êîëè÷åñòâî áàðîâ íà êîòîðûõ ýêñïåðò îïòèìèçèðóåòñÿ
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start(){
Step=CheckBars;
int h=FileOpen(Symbol()+"_"+Period()+"_OptDates.txt",FILE_CSV|FILE_WRITE);
int pt=86400*(Time[Shift]/86400);
int pbs=-Step;
for(int i=pt;i>Time[Bars-1];i-=86400){
int bs=fMyBarShift2(i);
if(bs-pbs>=Step){
for(int j=i-86400;j>Time[Bars-1];j-=86400){
int bs2=fMyBarShift2(j);
if(bs2-bs>=CheckBars){
for(int k=i-86400;k>Time[Bars-1];k-=86400){
int bs3=fMyBarShift2(k);
if(bs3-bs2>=OptimizationBars){
FileWrite(h,TimeToStr(k,TIME_DATE)+" - "+TimeToStr(j,TIME_DATE)+" ("+(bs3-bs2)+"), "+TimeToStr(j,TIME_DATE)+" - "+TimeToStr(i,TIME_DATE)+" ("+(bs2-bs)+")");
break;
}
}
break;
}
}
pt=i;
pbs=fMyBarShift2(pt);
}
}
FileClose(h);
return(0);
}
int fMyBarShift2(datetime aTime){
int t1=iBarShift(NULL,0,aTime,true);
if(t1==-1){
return(iBarShift(NULL,0,aTime,false)-1);
}
return(t1);
}
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---