NeuroShel2 dll import into MT4

Sugus

Newbie
Messages
2
Likes
0
Hello!

I am trying to use ns2-32.dll from NeuroShell to use my neuro network in Expert Advisor MT4 but every time when I use that code in my EA it couses Critical Error and MT4 is jamed.

May be there is someone who did it already with sucsess.
That code have to read file for example test.def which is generated by NeuroShell2 and it contains data like netnumber, n_input number of neurons of inputs and n_out number of neurons of outputs.
But always there is error of OpenNet.
What is wrong with it?

#import "NS2-32.dll"
int OpenNet(string defpath, int& netnumber[1], int& n_input[1], int& n_out[1]);
int FireNet(int& netnumber[1], double& inarray[], double& outarray[]);
int CloseNet(int& netnumber[1]);
#import

............................

//------------------------------------------------------------------+
int ret;
int netnumber[1], N_in[1], N_out[1];
double inarray[],outarray[];
string defpath="C:\NeuroShell\test.def";
//------------------------------------------------------------------+
................................

int init()
{

..........................................

ret=OpenNet(defpath, netnumber, N_in, N_out);
if (ret!=0 )
{
Print("Ошибка!!! ret= ",ret);
return(0);
}
else
{
ArrayResize(inarray,N_in[0]);
ArrayResize(outarray,N_out[0]);
N=N_out[0];
}
//-------
return(0);
}

//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
CloseNet(netnumber); // close the network
//----
return(0);
}

//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
//----------------------------------------------------------------+
if (ret!=0) { return(0); }
//----------------------------------------------------------------+
int ret_F;
............................
............................
ret_F=FireNet(netnumber, inarray, outarray);
...........................
if (ret_F!=0 )
{
Print("Error!!! ret_F= ",ret_F);
return(0);
}
.........................
.........................

return(0);
}

Thanks!!
 
Top