欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    如何编写EA电脑基础知识IT计算机专业资料复习进程.doc

    • 资源ID:86464649       资源大小:200KB        全文页数:24页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    如何编写EA电脑基础知识IT计算机专业资料复习进程.doc

    Good is good, but better carries it.精益求精,善益求善。如何编写EA电脑基础知识IT计算机专业资料-该换平台了,新手老手马上到大牛推荐的幸运平台,领取2000赠金easy-forex 外汇交易平台是个人投资者寻求外汇及其他主要全球市场交易机会的首选,提供24小时外汇交易,黄金交易,石油交易!官方注册连接:http:/record.partners.easy-第四章认识Close0和Open0一个K线的开始叫Open0一个K线的结束叫Close0上一个的K线的开始叫Open1上一个K线的结束叫Close1上上一个的K线的开始叫Open2上上一个K线的结束叫Close2所以要判断几时的K线就什么号码比如:Open0Open1Open2Open3Open4比如:Close0Close1Close2Close3Close4Close0>Open0表示上升Close0<Open0表示下降如果你这样编写if(Close0>Open0&&Close1>Open1&&Close2>Open2&&Close3>Open3)buyme();表示后方有3次上升然后这一次也是上升判断就下注上升也就是买上Buy反过来就卖下Sell第5章:认识High0Low0第五章认识High0和Low0一个K线的高点叫High0一个K线的低点叫Low0上一个的K线的高点叫High1上一个K线的低点叫Low1上上一个的K线的高点叫High2上上一个K线的低点叫Low2所以要判断几时K线的高低点就什么号码比如:High0High1High2High3High4比如:Low0Low1Low2Low3Low4High0Low0表示我们可以得到他们的差点High1Low1表示我们可以得到上一回的差点如果你这样编写if(Close0>Open0&&Close1>Open1&&(High1Low1)/Point>10&&(High0Low0)/Point>10)buyme();表示后方有上升超过10点然后这一次是上升超过10点判断就下注上升也就是买上Buy反过来就卖下Sellif(Close0<Open0&&Close1<Open1&&(High1Low1)/Point>10&&(High0Low0)/Point>10)sellme();第柒章:学会解读EA第七章如何解读EA告诉我以下怎样解读if(s+b=0&&ma1now>ma2now&&(ma1now-ma2now)/point>10&&macd1now>0&&macd2now/point>10&&close0>open0&&high0-low0/point>10&&close0-open0/point>10)buyme();解读:如果(买卖等于零加上均线1大过均线2加上均线1减均线2大过10点加上macd1超过零加上macd2超过10点加上收盘大过开盘加上高减低大过10点加上收盘减开盘大过10点)这样才买上成交所以一些基本的语句我们是一定要记住和知道的不知道就不会解读不会解读就不会编写策略不会编写就永远作市场的水鱼第八章:认识Point第八章如何认识Point什么是Point?Point是什么?为什么叫Point?为什么要乘以Point?为什么又除以Point?Point的英文解释是“点”MT4系统内定这个Point字代表一个变化的“点”比如:欧元的计算1.9356/Point=19356又比如:日元的计算132.66/Point=13266注意:Point是会自动变化的好处是当你编写程式的时候不会因为欧元对美元欧元对日元就会出错那么Point有什么用呢?再比如:High的值减Low的值或者关盘减开盘if(Close0Open0/Point>10)buyme();他的值可能是1.3100-1.3270=-170-170是没有大过10因为是下降,所以没有成交交易再比如:macd1_0的值减macd1_1的值再比如:ma1now的值减ma2now的值总之是计算“点”用的Point没有固定的值碰到GU可能是0.0001碰到EJ可能是0.001使用的目的就是要把他们变成“整数”你可以了解为除/Point与乘*point/Point小數點往後移小數變成整數*Point小數點往前移整數變成小數例子:EU小數點有4位EU/Point小數點往后移4位小數變成整數JY小數點有2位JY/Point小數點往后移2位也是小數点變成整數JY的high0low0小數点/  Point整數EU的high0low0小數点/  Point整數例子:JY的if(high0low0>10*  Point  )buyme();JY的高盘减低盘大过10点就买上EU的if(high0low0>10*  Point)buyme();EU的高盘减低盘大过10点就买上这两个答案一样if(high0low0>10*  Point)buyme();if(high0low0)/Point>10  )buyme();注意:Point的P是大写的Ask的A也是大写的Bid的B要大写颜色Red的R也是大写的第9章:认识Time0第九章认识Time0什么是Time0?没有人告诉过我我也没有问过任何人什么是Time0?很多时候我们遇到新的词句我们第一步就是“研究”而不是问问了也是白问因为明天你就忘记了是忘得一干二尽啊!在上一个EA速成班的策略中我有用到你还记得吗?你有注意到吗?单看它的写法应该可以猜到一二如果你想知道没有他的效果会怎样简单,把Time0给删掉看看效果怎样自我学习是不可少的功课认识Time0记住Time0的效果在以后编写策略时可能会有用到的第10章:认识时间观念第十章认识时间观念很多人在编写策略时写到到不知道怎样写这样写也不行那样也不行干脆避开热门时间不下注这就用到时间了有些人只喜欢玩热门时间比如早上八点到下午3点看看别人编写的/-判断K线开盘时间,以减少运行次数。-if(Minute()=0)return(0);/正点时间任何时间段均不运行。if(Minute()>3)nAllowSend=0;return(0);/从此行起可以编写您认为有价值的交易时间,我们现在是开盘3分钟内。/-看看别人编写的if(TimeDayOfWeek(TimeCurrent()=0&&Allow_Trade_On_Sun=FALSE)ok_to_trade=FALSE;if(TimeDayOfWeek(TimeCurrent()=1&&Allow_Trade_On_Mon=FALSE)ok_to_trade=FALSE;if(TimeDayOfWeek(TimeCurrent()=2&&Allow_Trade_On_Tue=FALSE)ok_to_trade=FALSE;if(TimeDayOfWeek(TimeCurrent()=3&&Allow_Trade_On_Wed=FALSE)ok_to_trade=FALSE;if(TimeDayOfWeek(TimeCurrent()=4&&Allow_Trade_On_Thu=FALSE)ok_to_trade=FALSE;if(TimeDayOfWeek(TimeCurrent()=5&&Allow_Trade_On_Fri=FALSE)ok_to_trade=FALSE;if(TimeDayOfWeek(TimeCurrent()=6&&Allow_Trade_On_Sat=FALSE)ok_to_trade=FALSE;if(TimeHour(TimeCurrent()!=0)ok_to_trade=FALSE;if(TimeMinute(TimeCurrent()!=0)ok_to_trade=FALSE;if(ok_to_trade=FALSE)else。看别人的EA就是为了“自我学习”你学习到了什么?你看到了什么?第一:时间是写在策略的前面if(TimeDayOfWeek(TimeCurrent()=5意思就是星期几?5就是星期5如果要用到小时应该是这样编写的if(TimeHour(TimeCurrent()=4)。如果要用到分钟应该是这样编写的if(TimeMinute(TimeCurrent()=4)。第11章:认识常用之符号第十一章认识常用符号如果你不认识这些符号你很难编写你的EA策略可能都不知道怎样表达a>b这个代表a大过ba<b这个代表a小过ba=b这个代表a等于bab这个也代表a等于b这两个的分别就是第一个是编写在前方if(a=b)第二个是编写在后方if(a=b)c=b;a=>b这个代表a大过b或者等于ba=<b这个代表a小过b或者等于ba&&b这个代表a再加上b才发生效果a|b这个代表a或者b都可以发生效果-*/这个代表加减乘除|这个符号我在键盘找了好久好久也没有发现不知道他们是怎样打出来的问人?哈哈和。也没有问过最近发现原来是这样的首先按Shift不放然后再按就有|出来了哈哈和。第12章:试一试第十二章试一试如果High3=1.9976,Low0=1.9732a是High3和Low0的中间线b是High3和a的中间线c是Low0和a的中间线试一试找出b和c的价值各是多少?试一试编写成程式速成班的EA结构还少了2个子程式分别是Closebuy()和Closesell();试一试编写或从别的EAcopy&Press过来然后放在我们速成班的EA里边并公开出来第14章:复盘模型的质量第十三章复盘模型的质量很多人不懂也不知道为什么测试的时候EA可以赚钱真正用的时候不能,奇怪?其实一点也不奇怪因为它们不了解EA的复盘模型复盘模型有三种但只有第一种的是可靠的其他的更本不实际就是这个:每个即时价位(基于所有可利用的最小时段的每一个价位的分形插值计算)商品EURUSD(EurovsUSDollar)时间周期日线图2007.01.0200:00-2007.12.2800:00(2007.01.02-2007.12.31)复盘模型每个即时价位(基于所有可利用的最小时段的每一个价位的分形插值计算)经测试过的柱数1259用于复盘的即时价数量1190813复盘模型的质量90.00%输入图表错误0起始资金10000.00总净盈利12516.45总获利20697.15总亏损-8180.70盈利比2.53预期盈利6.80绝对亏损2705.73最大亏损3884.28(34.75%)相对亏损34.75%(3884.28)交易单总计1841卖单(获利百分比)602(55.98%)买单(获利百分比)1239(61.82%)盈利交易(占总百分比)1103(59.91%)亏损交易(占总百分比)738(40.09%)最大:获利交易421.80亏损交易-250.70平均:获利交易18.76亏损交易-11.08最大:连续获利金额12(75.94)连续亏损金额7(-336.98)最多:连续获利次数782.52(6)连续亏损次数-757.82(5)平均:连续获利3连续亏损2只有在这第一种复盘模型下测试才会跑出:复盘模型的质量90.00%其他种类的都是na所以快速测试成功赚钱的别高兴太早他可能是假象而已只有在:每个即时价位上测试赚钱的EA才是真正可以用的EA测试到至少2007年的要赚钱才可以用编写策略其实很简单为什么简单因为速成班的EA模板已经便便有了之后什么策略也难不倒你了比如这样if(s+b=0&&macd1>macd2&&macd1_2<macd2_2)buyme();如果你要交叉先退出sell就把这个加在那个的上面就可以了if(s+b=1&&macd1>macd2&&macd1_2<macd2_2)closesell();這是小唐我最近在測試的程式這是利用在一分鐘線的交易程式自動買及平倉這程式的缺點目前在於下殺的情況下還無法判斷所以如果有高手願意賜教我會非常歡迎您唷歡迎加入論壇一起討論/+-+/|/|無傭致贏外匯交易MT4智能交易系統|/|測試版V1.0小唐歡迎大家一起研究|/+-+#propertycopyright"Copyright2006、OKwh"#propertylink""#defineMAGICMA200610011231/+-+/|注意沒有指標檔案那些property|/+-+externintwhichmethod=3;/14種下單方式externdoubleTakeProfit=3;/賺三點就平倉externdoubleStopLoss=20;/止損20externdoubleMaximumRisk=0.05;/根據可用保證金計算首筆開倉手數,0.05代表5%的保證金風險;0.3externdoubleTrailingStop=25;/追蹤止損externintmaxOpen=3;/最多持倉限制3externdoublemaxLots=0.1;/最多單倉限制5externintbb=0;/非零就跟蹤止贏externdoubleMATrendPeriod=26;/使用26均線inti,p2,xxx,p1,res;doubleLots;datetimelasttime;intinit()/初始化Lots=1;lasttime=NULL;return(0);intdeinit()return(0);/反初始化/主程序intstart()CheckForOpen();if(bb>0)CTP();/跟蹤止贏return(0);/+-下面是各子程序-+doubleLotsOptimized()/確定下單量,開倉調用doublelot=Lots;intorders=HistoryTotal();/historyorderstotalintlosses=0;/numberoflossesorderswithoutabreak/MarketInfo(Symbol(),MODE_MINLOT);/MarketInfo(Symbol(),MODE_MAXLOT);/MarketInfo(Symbol(),MODE_LOTSTEP);lot=NormalizeDouble(MaximumRisk*AccountBalance()/AccountLeverage(),1);if(lot<0.1)lot=0.1;if(lot>maxLots)lot=maxLots;return(lot);/平倉持有的買單voidCloseBuy()if(OrdersTotal()>0)for(i=OrdersTotal()-1;i<0;i+)if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)=false)break;if(OrderType()=OP_BUY)OrderClose(OrderTicket(),OrderLots(),Bid,3,White);Sleep(1000);/平倉持有的賣單voidCloseSell()if(OrdersTotal()>0)for(i=OrdersTotal()-1;i<0;i+)if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)=false)break;if(OrderType()=OP_SELL)OrderClose(OrderTicket(),OrderLots(),Ask,3,White);Sleep(10000);/抓最後一筆訂單的價錢doubleGetLastOrderPrice()doubleLastOrderPrice;if(OrdersTotal()>0)OrderSelect(OrdersTotal()-1,SELECT_BY_POS);LastOrderPrice=OrderOpenPrice();return(LastOrderPrice);/+./判斷是否買或賣或平倉intbuyorsell()/在這個函數計算設置你的交易信號doubleMacdCurrent,MacdPrevious,SignalCurrent;doubleSignalPrevious,MaCurrent,MaPrevious;doubleMacdnew,LastPrice;Macdnew=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0);/目前macd值MacdCurrent=iStochastic(NULL,0,9,9,8,MODE_SMA,0,MODE_MAIN,0);/目前stoch值/MacdPrevious=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);MacdPrevious=iStochastic(NULL,0,9,9,8,MODE_SMA,0,MODE_MAIN,1);/SignalCurrent=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0);SignalCurrent=iStochastic(NULL,NULL,0,9,9,8,PRICE_CLOSE,MODE_SIGNAL,0);/SignalPrevious=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);SignalPrevious=iStochastic(NULL,NULL,0,9,9,8,PRICE_CLOSE,MODE_SIGNAL,1);MaCurrent=iMA(NULL,0,MATrendPeriod,0,MODE_EMA,PRICE_CLOSE,0);MaPrevious=iMA(NULL,0,MATrendPeriod,0,MODE_EMA,PRICE_CLOSE,1);/strMain=iStochastic(NULL,0,9,9,8,MODE_SMA,0,MODE_MAIN,0);LastPrice=GetLastOrderPrice()-0.03;/if(MacdCurrent<20&&MacdCurrent>SignalCurrent&&Bid<123.50)/設定stoch<25且價位需低於123.5if(MacdCurrent<22&&Macdnew<-0.005&&Bid<122&&LastPrice<Bid)/macd值小於-0.002且價位低於123.5買進return(1);/買Ma在上升,Macd在0線上,並且兩線上交叉Sleep(3000);if(MacdCurrent>80&&MacdCurrent<SignalCurrent)return(-1);/賣return(0);/不交易intnowbuyorsell=0;voidCheckForOpen()if(Time0=lasttime)return;/每時間週期檢查一次lasttime=Time0;nowbuyorsell=buyorsell();/獲取買賣信號if(nowbuyorsell=1)/買先結束已賣的CloseSell();if(nowbuyorsell=-1)/賣先結束已買的CloseBuy();/if(TimeDayOfWeek(CurTime()=1)/if(TimeHour(CurTime()<3)return;/週一早8點前不做/if(TimeDayOfWeek(CurTime()=5)/if(TimeHour(CurTime()>19)return;/週五晚11點後不做/if(OrdersTotal()>=maxOpen)return;/如果已持有開倉數達到最大,不做if(nowbuyorsell=0)return;/不交易TradeOK();/去下單交易voidTradeOK()/去下單交易interror;if(nowbuyorsell=1)/買switch(whichmethod)case1:res=OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,0,"",MAGICMA,0,Blue);break;case2:res=OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,Ask-StopLoss*Point,0,"",MAGICMA,0,Blue);break;case3:res=OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,Ask+TakeProfit*Point,"",MAGICMA,0,Blue);break;case4:res=OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,"",MAGICMA,0,Blue);break;default:res=OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,0,"",MAGICMA,0,Blue);break;if(res<=0)error=GetLastError();if(error=134)Print("Received134ErrorafterOrderSend()!");/notenoughmoneyif(error=135)RefreshRates();/priceshavechangedSleep(10000);return;if(nowbuyorsell=-1)/賣switch(whichmethod)case1:res=OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,3,0,0,"",MAGICMA,0,Red);break;case2:res=OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,3,Bid+StopLoss*Point,0,"",MAGICMA,0,Red);break;case3:res=OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,3,0,Bid-TakeProfit*Point,"",MAGICMA,0,Red);break;case4:res=OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,3,Bid+StopLoss*Point,Bid-TakeProfit*Point,"",MAGICMA,0,Red);break;default:res=OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,3,0,0,"",MAGICMA,0,Red);break;if(res<=0)error=GetLastError();if(error=134)Print("Received134ErrorafterOrderSend()!");/notenoughmoneyif(error=135)RefreshRates();/priceshavechangedSleep(10000);return;voidCTP()/跟蹤止贏boolbs=false;for(inti=0;i<OrdersTotal();i+)if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)=false)break;if(OrderType()=OP_BUY)if(Bid-OrderOpenPrice()>(TrailingStop*MarketInfo(OrderSymbol(),MODE_POINT)if(OrderStopLoss()<Bid-TrailingStop*MarketInfo(OrderSymbol(),MODE_POINT)bs=OrderModify(OrderTicket(),OrderOpenPrice(),Bid-TrailingStop*MarketInfo(OrderSymbol(),MODE_POINT),OrderTakeProfit(),0,Green);elseif(OrderType()=OP_SELL)if(OrderOpenPrice()-Ask)>(TrailingStop*MarketInfo(OrderSymbol(),MODE_POINT)if(OrderStopLoss()>(Ask+TrailingStop*MarketInfo(OrderSymbol(),MODE_POINT)bs=OrderModify(OrderTicket(),OrderOpenPrice(),Ask+TrailingStop*MarketInfo(OrderSymbol(),MODE_POINT),OrderTakeProfit(),0,Tan);第20章:什么是magic第十四章什么是Magicmagic在红毛话的意思就是“魔术”在MT4的用意就是辨认这EA开的单子MT4顾虑到不是所有的顾客都使用EA开单有时候你是可以自己手动开单有magicno的EA他只辨认及管理EA自己开的单子他不会管理你手动开的单子意思就是比如你总结有10个单但只有三个是EA自动开单的假如EA要关闭单子他只会选择magicno一样的3个单子关掉不会选择你手动添加的单子关闭第二的可能是有些人会在同一个户口使用许多不同的EA个个EA有他自己的魔术号码所有EA管理自己的魔术号码就不会出乱子了也有可能一个EA里面有好几个magic号码其用意也是在控制复杂的开单和关单有时候有些人用自定函数的名称MAGICMA或MagicNumber但效果一样的举例:#defineMAGICMA2828228/intMagicNumber=200601182020;/allowsmultipleexpertstotradeonsameaccount以下是一个添加在TrailingStop的MAGICMA方式voidTrailingStop()/ifwehaveopenedpositionswetakecareofthemfor(cnt=OrdersTotal();cnt>=0;cnt-)OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);if(OrderSymbol()=Symbol()&&OrderMagicNumber()=MAGICMA)if(OrderType()=OP_SELL)if(TrailingStop>0)if(OrderOpenPrice()-Ask)>(Point*TrailingStop)if(OrderStopLoss()>(Ask+Point*TrailingStop)|(OrderStopLoss()=0)OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);return(0);if(OrderType()=OP_BUY)if(TrailingStop>0)if(Bid-OrderOpenPrice()>Point*TrailingStop)if(OrderStopLoss()<Bid-Point*TrailingStop)OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);return(0);/endTrailingStop/只有你多多参考别人怎样加“魔术号码”久而久之你也会了没有什么了不起的哈哈和。-

    注意事项

    本文(如何编写EA电脑基础知识IT计算机专业资料复习进程.doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开