程式交易教學

誠邀您參加全球知名外匯經紀商OANDA的自營交易(Prop Trader)

報名OANDA自營交易(Prop Trader),並通過我們的考核,您就可以使用OANDA提供的資金進行交易,獲得高達90%的交易利潤分成。



全面升級——更多功能、更大靈活性!
優化了“固定最大虧損”,“每日虧損限制”等。查看詳情全新「Boost」計劃

500,000美元交易資金
您可以使用最高500,000美元的資金進行交易。

豐富的交易商品
您可以交易包括外匯、黃金、原油、股票指數等多種商品。



關於OnTick()函數與OnTimer()函數的動作處理說明


在開發MT4的EA時OnTick()函數非常重要。

OnTick()函數雖然在Tick有變化就會啟動,但是在OnTick()函數處理中出現以下Tick變化時不會啟動。

表)USDJPY的1分鐘的Tick次數

1分鐘的Tick次數

上表中的Tick是1分鐘平均62次。

另外,Tick次數的分佈的頂點也是62次。

其中90%是在1分鐘152次以内。

如果想要把全部Tick都處理的話,需要OnTick()在0.39秒以内就要處理一次。

1分鐘以內的Tick動作也是有時急劇有時緩慢,所以需要在更短時間內處理完畢。

那麼OnTimer()函數又會怎麼樣呢?

關於OnTick()在官方聲明中有講到在接下來的動作中會忽略下一個Tick,但是,對於OnTime()沒有相同的敘述。

驗證在OnTime()動作中接下來的OnTimer()會怎麼樣。

源碼)

int c;

void OnInit(){EventSetTimer(1);}

void OnTimer(){

c++;

Sleep(3000);

Print(c);

}

每1秒就會啟動OnTimer()函數。

使用在OnTimer()函數中的Sleep()函數來停止3秒鐘。

在動作中可以進行下一個動作時,會在每1秒顯示次數。

忽略下一個動作時會在每3秒顯示次數。



結果就是大約每隔3秒就會動作。

看來OnTimer()也不重複動作。

在歷史回測中會使用全部Tick動作。

這也是即便使用真實Tick數據也會在實盤中出現差異的原因之一。

所以減輕OnTick()內的動作,可以讓交易更加有利。

將EA自動程式交易應用於外匯與差價合約交易中

EA

我們以圖文形式詳細介紹有關EA自動程式交易的基本知識,以及在MT4/MT5平台上的安裝、參數設定方法、編碼等等內容。另外,對持有OANDA帳戶的客戶,還可以免費使用我們的獨有EA與指標工具。

誠邀您參加全球知名外匯經紀商OANDA的自營交易(Prop Trader)

報名OANDA自營交易(Prop Trader),並通過我們的考核,您就可以使用OANDA提供的資金進行交易,獲得高達90%的交易利潤分成。



全面升級——更多功能、更大靈活性!
優化了“固定最大虧損”,“每日虧損限制”等。查看詳情全新「Boost」計劃

500,000美元交易資金
您可以使用最高500,000美元的資金進行交易。

豐富的交易商品
您可以交易包括外匯、黃金、原油、股票指數等多種商品。