Better NN EA development - page 24

 
stef:
For giapel, lvsefa and the others interested in NN EA,

Here a version of my PNN EA. For now, it is just the ex4 file.

You can test it, i have introduce a lot of parameters.

How to run it.

First, you have to feed the PNN with the maximum of bars (Phase 1). For this, run the EA in the history, with the create_file=true. I have good results with M5 bars.

You can parameter 4 inputs, which are differences between Ask and a moving average. You can parameter the moving averages in differents timeframe.

Once you have created the file, you can run the EA in normal mode (create_file=false). Sigma is the sensibility of the PNN, 0.1 for 1 input is good, for 3 or 4 inputs 0.3 is ok. Delta is the level where a order is opened. You can see the results of the pnn in the journal tab.

For the run, you can choose 1 to 4 inputs, but don't change the parameter of the inputs.

In this version, the PNN is not dynamic, i.e. in run mode, he doesn't leaned at each bar. I will add this fonction and others one nexts weeks.

Have good tests.

Sorry for my bad english, contact me if you don't understand me

hi, stef

i' ve download expert, complete phase 1 and ready to start phase 2.

i ' ve no experience about NN, even if in my opinion is a very good strategy.

if you code dynamic-PNN count me to send it.

i' ve a suggestion about manage expert : add magic number to trade with different currency-pairs and introduce money management (if you want i can contribute ).

thanks in advance

giapel

 

My Gaussian PNN

For giapel, lvsefa and the others interested in NN EA,

Here a version of my PNN EA. For now, it is just the ex4 file.

You can test it, i have introduce a lot of parameters.

How to run it.

First, you have to feed the PNN with the maximum of bars (Phase 1). For this, run the EA in the history, with the create_file=true. I have good results with M5 bars.

You can parameter 4 inputs, which are differences between Ask and a moving average. You can parameter the moving averages in differents timeframe.

Once you have created the file, you can run the EA in normal mode (create_file=false). Sigma is the sensibility of the PNN, 0.1 for 1 input is good, for 3 or 4 inputs 0.3 is ok. Delta is the level where a order is opened. You can see the results of the pnn in the journal tab.

For the run, you can choose 1 to 4 inputs, but don't change the parameter of the inputs.

In this version, the PNN is not dynamic, i.e. in run mode, he doesn't leaned at each bar. I will add this fonction and others one nexts weeks.

Have good tests.

Sorry for my bad english, contact me if you don't understand me

Files:
gausspnn.ex4  18 kb
 

Strategy Tester Report for SVM_v_17a_EURUSD EA

Settings:

//////////////////////////////////////////

#define NR_BARS1 2000

#define NR_BARS2 2000

extern string Symb0 ="EURUSD";

extern double Lots =0.1;

extern int diff1 =true;

extern int decimalplace =14;

//extern int svmtype =0; //0-libsvm,1-svmlight

extern int BasePeriod =PERIOD_M5;

extern int TrainPeriod =PERIOD_H4;

extern int class_type =3; //0-multiclass,1-class(0,1,-1), 2-class(-3,-2,-1,0,1,2,3)

extern int TrainStopLoss =40; //30-50pips

extern int TrainTakeProfit =40;

extern int TradeStopLoss =60; //30-50pips

extern int TradeTakeProfit =60;

extern int FutureWindow =70;

extern int Signal =8;

extern bool UseRamDisk =true;

extern datetime BeginDate = D'2008.04.01 08:15';

extern bool ReverseSignal=false;

//////////////////////////////////////////////////

///////////////////////////////////////

calc3(r1,rv1);

calc3(r2,rv1);

calc3(r3,rv1);

calc3(r4,rv1);

calc3(r5,rv1);

/*

calc3(r6,rv1);

calc3(r7,rv1);

calc3(r8,rv1);

calc3(r9,rv1);

calc3(r10,rv1);

calc3(r11,rv1);

calc3(r12,rv1);

calc3(r13,rv1);

calc3(r14,rv1);

calc3(r15,rv1);

calc3(r16,rv1);

calc3(r17,rv1);

calc3(r18,rv1);

calc3(r19,rv1);

calc3(r20,rv1);

calc3(r21,rv1);

calc3(r22,rv1);

calc3(r23,rv1);

calc3(r24,rv1);

calc3(r25,rv1);

calc3(r26,rv1);

calc3(r27,rv1);

calc3(r28,rv1);

calc3(r29,rv1);

calc3(r30,rv1);

*/

////////////////////////////////

if(ReverseSignal)

rv1=rv1*(-1);

return(rv1);

}

void calc(int r1, int &rv1)

{

if(r14)

rv1++;

if(r1>0 && r1<4)

rv1--;

}

void calc2(int r1, int &rv1)

{

if(r1==1)

rv1++;

if(r1==-1)

rv1--;

}

void calc3(int r1, int &rv1)

{

/*

if(r1==1 || r1==2 || r1==3 )

rv1++;

if(r1==-1 || r1==-2 || r1==-3)

rv1--;

*/

if(r1==1 )

rv1++;

if(r1==-1 )

rv1--;

}

 
 
stef:
For giapel, lvsefa and the others interested in NN EA,

Here a version of my PNN EA. For now, it is just the ex4 file.

You can test it, i have introduce a lot of parameters.

How to run it.

First, you have to feed the PNN with the maximum of bars (Phase 1). For this, run the EA in the history, with the create_file=true. I have good results with M5 bars.

You can parameter 4 inputs, which are differences between Ask and a moving average. You can parameter the moving averages in differents timeframe.

Once you have created the file, you can run the EA in normal mode (create_file=false). Sigma is the sensibility of the PNN, 0.1 for 1 input is good, for 3 or 4 inputs 0.3 is ok. Delta is the level where a order is opened. You can see the results of the pnn in the journal tab.

For the run, you can choose 1 to 4 inputs, but don't change the parameter of the inputs.

In this version, the PNN is not dynamic, i.e. in run mode, he doesn't leaned at each bar. I will add this fonction and others one nexts weeks.

Have good tests.

Sorry for my bad english, contact me if you don't understand me

Hi Stef:

Thanks for all of your works,It so great and valuable!

For the sharing of EX4 EA now we can do more further discuss....

Now I'll research into it,it's really a pleasantly surprised gift! Thank you Stef.

the PNN dynamic study code may be like this:

if (time2study < Time[0]) {

//study code here....;
time2study = Time[0] + Period() * 60 * forecastBars

}

Best wishes

Lvsefa

 
 

This is my MLP NN up to 50 inputs and up to 5 layers with online learning.

Under development.

bbop

Files:
mlp.gif  132 kb
 
 

SVM_v_23a_EURUSD EA

Interbank FX real mini account.

//////////////////////////////////////////

#define NR_BARS1 6000

#define NR_BARS2 2000

extern string Symb0 ="EURUSDm";

extern double Lots =0.01;

extern int diff1 =true;

extern int decimalplace =14;

//extern int svmtype =0; //0-libsvm,1-svmlight

extern int BasePeriod =PERIOD_M5;

extern int TrainPeriod =PERIOD_H1;

extern int class_type =10; //0-multiclass,

//1-class(0,1,-1),

//2,3-class(-3,-2,-1,0,1,2,3)

//4-class(-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6)

extern int TrainStopLoss_buy=20;

extern int TrainStopLoss_sell=20;

extern int TrainTakeProfit_buy=20;

extern int TrainTakeProfit_sell=20;

extern int TradeStopLoss =60; //30-50pips

extern int TradeTakeProfit =60;

extern int FutureWindow =120;

extern int Signal =8;

extern bool UseRamDisk =true;

extern datetime BeginDate = D'2008.05.01 14:00';

extern bool ReverseSignal=false;

extern bool TradeEnabled =false;

//////////////////////////////////////////////////

Indicators used:

#SVM_b4_dd_pred8.mq4

SvmPower.mq4

===================

1.Extarct 07.rar into a windows folder

2.View as a slide show

 

Indicators:

Expected Volumes

Expected (High-Low)

~~~~~~~~~~~~~~~~~~~

Interbank FX real mini account

Symbol:EURUSDm

Timeframes:H1,H4

~~~~~~~~~~~~~~~~~~~

H1

(High-Low)min=15 pips

(High-Low)max=40 pips

Expected values for (Hi-Lo) in pips:

hh:mm (GMT+0)

00:00 --> 19 pips

01:00 --> 18

02:00 --> 15

03:00 --> 14

04:00 --> 14

05:00 --> 19

06:00 --> 27

07:00 --> 32

08:00 --> 35

09:00 --> 31

10:00 --> 29

11:00 --> 25

12:00 --> 34

13:00 --> 38

14:00 --> 37

15:00 --> 27

16:00 --> 21

17:00 --> 21

18:00 --> 20

19:00 --> 17

20:00 --> 14

21:00 --> 14

22:00 --> 16

23:00 --> 16

H4

(High-Low)min=20 pips

(High-Low)max=60 pips

Expected values for (Hi-Lo) in pips:

hh:mm (GMT+0)

00:00 --> 24 pips

04:00 --> 35

08:00 --> 43

12:00 --> 56

16:00 --> 31

20:00 --> 19

Files:
__2.gif  21 kb
__3.gif  21 kb
Reason: