|
下面是MarketInfo()函数,并且把主要货币兑列出来了。以后就不用干体力活了。。 //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ double sy1; /* 定义了一个变量,由于需要,定义为全局变量(即,放在start()前面 )。sy1,是随便起了一个名字,你也可以用其他的,之所以加了数字是可以结合数组来使用。 在定义了这个sy1变量以后,在start()里面的就直接用,然后用MarkertInfo()函数赋值,这个函数能提取出很多东西,具体见mt4的帮助,在这里我们要提取的是(不同)货币兑的价格,具体参数设置是:sy1=MarketInfo(\"AUDCAD\",MODE_BID); 括号里面的第一个参数是货币兑,第二个是要提取的值,这里是MODE_BID 即 买价。 如何使用? sy1是一个数字,AUDCAD的即时买价,这在开仓,平仓,修改单子的时,要用价格的时候用到。但是,不知道是本人水平还是MT4的平台设计问题,不能及时获取价格。 即加载后,不同货币兑的价格只能通过当前窗口价格变化才能获取更新,这是因为EA的Start的运行,是由价格变化才重新运行的。 简单说:用MarketInfo 提取的价格来开仓和平仓存在很大问题, 最后说三点 1,用MarketInfo提取不同价格货币对,解决了在一个图表加载EA时获得多个货币对价格的问题。 但同时存在一个很大的问题:不同货币兑的价格只能通过当前窗口价格变化才能获取更新,这是因为EA的Start的运行,是由价格变化才重新运行的。也希望有高手能提出更好的办法 2.我把这个东西发出来,是提供给大家开发 “套利策略”使用的。 至于什么是套利策略,大家理解吧。谢谢东方兄提供的套利策略思路。 */ double sy2; double sy3; double sy4; double sy5; double sy6; double sy7; double sy8; double sy9; double sy10; double sy11; double sy12; double sy13; double sy14; double sy15; double sy16; double sy17; double sy18; double sy19; double sy20; double sy21; double sy22; double sy23; int start() { //---- sy1=MarketInfo(\"AUDCAD\",MODE_BID); sy2=MarketInfo(\"AUDJPY\",MODE_BID); sy3=MarketInfo(\"AUDNZD\",MODE_BID); sy4=MarketInfo(\"AUDUSD\",MODE_BID); sy5=MarketInfo(\"CADJPY\",MODE_BID); sy6=MarketInfo(\"CHFJPY\",MODE_BID); sy7=MarketInfo(\"EURAUD\",MODE_BID); sy8=MarketInfo(\"EURCAD\",MODE_BID); sy9=MarketInfo(\"EURCHF\",MODE_BID); sy10=MarketInfo(\"EURGBP\",MODE_BID); sy11=MarketInfo(\"EURJPY\",MODE_BID); sy12=MarketInfo(\"EURUSD\",MODE_BID); sy13=MarketInfo(\"GBPCHF\",MODE_BID); sy14=MarketInfo(\"GBPJPY\",MODE_BID); sy15=MarketInfo(\"GBPUSD\",MODE_BID); sy16=MarketInfo(\"NZDUSD\",MODE_BID); sy17=MarketInfo(\"USDCAD\",MODE_BID); sy18=MarketInfo(\"USDCHF\",MODE_BID); sy19=MarketInfo(\"USDJPY\",MODE_BID); sy20=MarketInfo(\"USDMXN\",MODE_BID); sy21=MarketInfo(\"USDTRY\",MODE_BID); sy22=MarketInfo(\"XAGUSD\",MODE_BID); sy23=MarketInfo(\"XAUUSD\",MODE_BID); Comment(\"nAUDCAD\", sy1, \"n AUDJPY \", sy2 , \"n AUDNZD \", sy3 , \"n AUDUSD \", sy4 , \"n CADJPY \", sy5 , \"n CHFJPY \", sy6 , \"n EURAUD \", sy7 , \"n EURCAD \", sy8 , \"n EURCHF \", sy9 , \"n EURGBP \", sy10 , \"n EURJPY \", sy11 , \"n EURUSD \", sy12 , \"n GBPCHF \", sy13 , \"n GBPJPY \", sy14 , \"n GBPUSD \", sy15 , \"n NZDUSD \", sy16 , \"n USDCAD \", sy17 , \"n USDCHF \", sy18 , \"n USDJPY \", sy19 , \"n USDMXN \", sy20 , \"n USDTRY \", sy21 , \"n XAGUSD \", sy22 , \"n XAUUSD \", sy23 ); //---- return(0); } [ 本帖最后由 shuilifang8 于 2008-11-11 17:27 编辑 ] |
EA发布区