人工神经网络。 - 页 14 1...7891011121314 新评论 mario 2013.01.02 10:20 #131 你好。 我试着告诉你我是如何制作NS的。 我做了一个感知器(Kohonen著),诱导信号和输出的变化(Grosberg著)。 所有参数都是动态的--价格不会停留在一个地方。bool var2 - и здес разписал разные варианты . // Логика для покупка if ((var2 && perceptron()>BL) || (var3 && perceptron()>BL2) || (var4 && perceptron()>BL3)) NewPosition=OP_BUY; // Логика для продажа if ((war2 && perceptron()<SL) || (war3 && perceptron()<SL2) || (war4 && perceptron()<SL3)) NewPosition=OP_SELL; 一切都在市场开放时开始运作(欧洲、美洲、亚洲)。 我想大家都很清楚,但数据反馈是动态的。 BL,BL2,BL3好了,计算,通过它应该通过感知器,所以有一个信号(Grosberg)。 如何通过这扇门。 好吧,我想这个计划对你来说很清楚。 mario 2013.01.02 11:00 #132 我将把代码,最近发布的价格放在第二天。 该代码是针对MT4的(我认为可以很容易地用于MT5),像EA一样用于测试。//+------------------------------------------------------------------+ //| statistic.mq4 | //+------------------------------------------------------------------+ #property copyright "" #property link "" //Ну как сама формула: //Close Tomorrow = Close Today + (Close Today - Close Yesterday) * Alfa //+------------------------------------------------------------------+ int init(){return(0);} int deinit(){Comment("");return(0);} //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //+------------------------------------------------------------------+ double spead = MarketInfo(Symbol(),MODE_SPREAD); double open_d = iOpen(Symbol(),PERIOD_D1,0); double open_w = iOpen(Symbol(),PERIOD_W1,0); double open_m = iOpen(Symbol(),PERIOD_MN1,0); double open_d1 = iOpen(Symbol(),PERIOD_D1,1); double open_w1 = iOpen(Symbol(),PERIOD_W1,1); double open_m1 = iOpen(Symbol(),PERIOD_MN1,1); double clos_d = iClose(Symbol(),PERIOD_D1,1); double clos_w = iClose(Symbol(),PERIOD_W1,1); double clos_m = iClose(Symbol(),PERIOD_MN1,1); double perc_d = NormalizeDouble((((Close[0] - open_d)/open_d)*100),2); double perc_w = NormalizeDouble((((Close[0] - open_w)/open_w)*100),2); double perc_m = NormalizeDouble((((Close[0] - open_m)/open_m)*100),2); double perc_d_pr = NormalizeDouble((((clos_d - open_d1)/open_d1)*100),2); double perc_w_pr = NormalizeDouble((((clos_w - open_w1)/open_w1)*100),2); double perc_m_pr = NormalizeDouble((((clos_m - open_m1)/open_m1)*100),2); //+------------------------------------------------------------------+ double perc_y,perc_y_pr,open_y; datetime month; if(Month() > 1) month = Month()-1;else month = Month(); open_y = iOpen(Symbol(),PERIOD_MN1,month); perc_y = NormalizeDouble((((Close[0] - open_y)/open_y)*100),2); perc_y_pr = NormalizeDouble((((clos_m - open_y)/open_y)*100),2); //+------------------------------------------------------------------+ if(iVolume(Symbol(),PERIOD_D1,0) > 0 && iVolume(Symbol(),PERIOD_D1,0) < 2){ Print("perc_d_pr = ",perc_d_pr);} if(iVolume(Symbol(),PERIOD_W1,0) > 0 && iVolume(Symbol(),PERIOD_W1,0) < 2){ Print("perc_w_pr = ",perc_w_pr);} if(Month() > 1 && iVolume(Symbol(),PERIOD_MN1,0) > 0 && iVolume(Symbol(),PERIOD_MN1,0) < 2){ Print("perc_m_pr = ",perc_m_pr,"perc_y_pr = ",perc_y_pr);} Comment("\nВреме на брокера: ",TimeToStr(TimeCurrent(),TIME_SECONDS),", Локално време: "+TimeToStr(TimeLocal(),TIME_SECONDS), "\nТекущ спред: ",DoubleToStr(spead/10,1), "\n perc_d: ",perc_d, "\n perc_w: ",perc_w, "\n perc_m: ",perc_m, "\n perc_y: ",perc_y ); return(0); } //+------------------------------------------------------------------+ mario 2013.01.02 11:07 #133 对不起,错了文件-- 价格变化百分比的顶级 代码。 这个是正确的。//+------------------------------------------------------------------+ //| statistic_1.mq4 | //+------------------------------------------------------------------+ #property copyright "" #property link "" //Ну как сама формула: //Close Tomorrow = Close Today + (Close Today - Close Yesterday) * Alfa //+------------------------------------------------------------------+ int init(){return(0);} int deinit(){Comment("");return(0);} //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //+------------------------------------------------------------------+ double spead = MarketInfo(Symbol(),MODE_SPREAD); double Alfa,calc_cl,diff; double open_d1 = iOpen(Symbol(),PERIOD_D1,1); double clos_d1 = iClose(Symbol(),PERIOD_D1,1); double clos_d2 = iClose(Symbol(),PERIOD_D1,2); double clos_d3 = iClose(Symbol(),PERIOD_D1,3); Alfa = NormalizeDouble(((clos_d2 +(clos_d2 - clos_d3))/clos_d1),Digits); calc_cl = NormalizeDouble(((clos_d2 +(clos_d2 - clos_d3)) * Alfa),Digits); diff = NormalizeDouble((clos_d1 - calc_cl),Digits); //+------------------------------------------------------------------+ if(iVolume(Symbol(),PERIOD_D1,0) > 0 && iVolume(Symbol(),PERIOD_D1,0) < 2){ Print("Alfa = ",Alfa," clos_d1 = ",clos_d1," calc_cl = ",calc_cl," diff = ",diff); } Comment("\nВреме на брокера: ",TimeToStr(TimeCurrent(),TIME_SECONDS),", Локално време: "+TimeToStr(TimeLocal(),TIME_SECONDS), "\nТекущ спред: ",DoubleToStr(spead/10,1) ); return(0); } //+------------------------------------------------------------------+ 1...7891011121314 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你好。
我试着告诉你我是如何制作NS的。
我做了一个感知器(Kohonen著),诱导信号和输出的变化(Grosberg著)。
所有参数都是动态的--价格不会停留在一个地方。
一切都在市场开放时开始运作(欧洲、美洲、亚洲)。
我想大家都很清楚,但数据反馈是动态的。
BL,BL2,BL3好了,计算,通过它应该通过感知器,所以有一个信号(Grosberg)。
如何通过这扇门。
好吧,我想这个计划对你来说很清楚。
我将把代码,最近发布的价格放在第二天。
该代码是针对MT4的(我认为可以很容易地用于MT5),像EA一样用于测试。
对不起,错了文件-- 价格变化百分比的顶级 代码。
这个是正确的。
//+------------------------------------------------------------------+ //| statistic_1.mq4 | //+------------------------------------------------------------------+ #property copyright "" #property link "" //Ну как сама формула: //Close Tomorrow = Close Today + (Close Today - Close Yesterday) * Alfa //+------------------------------------------------------------------+ int init(){return(0);} int deinit(){Comment("");return(0);} //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //+------------------------------------------------------------------+ double spead = MarketInfo(Symbol(),MODE_SPREAD); double Alfa,calc_cl,diff; double open_d1 = iOpen(Symbol(),PERIOD_D1,1); double clos_d1 = iClose(Symbol(),PERIOD_D1,1); double clos_d2 = iClose(Symbol(),PERIOD_D1,2); double clos_d3 = iClose(Symbol(),PERIOD_D1,3); Alfa = NormalizeDouble(((clos_d2 +(clos_d2 - clos_d3))/clos_d1),Digits); calc_cl = NormalizeDouble(((clos_d2 +(clos_d2 - clos_d3)) * Alfa),Digits); diff = NormalizeDouble((clos_d1 - calc_cl),Digits); //+------------------------------------------------------------------+ if(iVolume(Symbol(),PERIOD_D1,0) > 0 && iVolume(Symbol(),PERIOD_D1,0) < 2){ Print("Alfa = ",Alfa," clos_d1 = ",clos_d1," calc_cl = ",calc_cl," diff = ",diff); } Comment("\nВреме на брокера: ",TimeToStr(TimeCurrent(),TIME_SECONDS),", Локално време: "+TimeToStr(TimeLocal(),TIME_SECONDS), "\nТекущ спред: ",DoubleToStr(spead/10,1) ); return(0); } //+------------------------------------------------------------------+