MT4 Java API

 
Ich möchte Sie auf die MT4 Java API aufmerksam machen, die ich entwickelt habe
 
Die MT4 Terminal Java API (JFX) soll eine Java-Schnittstelle zum MetaQuotes-Handel bieten
Server über das Standard-MetaTrader 4-Client-Terminal (MT4 Terminal).
 
To make use of JFX API, one must create its own strategy java class, extending
com.jfx.strategy.Strategy and overriding coordinate() method:

public class MyStrategy extends com. jfx. strategy. Strategy {
public void init( String symbol, int period, StrategyRunner strategyRunner) {
super. init( symbol, period, strategyRunner);
//
// load existing orders, recover itself from the previous shutdown
//
}
public void deinit() {
// release resources on EA exit
}
public void coordinate() {
// trading logic goes here
/* make use of all API methods: accountBalance, accountCompany, accountCredit, accountCurrency, accountEquity,
accountFreeMargin, accountMargin, accountName, accountNumber, accountProfit, comment, day, dayOfWeek, dayOfYear,
getLastError, getTickCount, hour, iAC, iAD, iADX, iAlligator, iAO, iATR, iBands, iBars, iBarShift, iBearsPower, iBullsPower,
iBWMFI, iCCI, iClose, iCustom, iDeMarker, iEnvelopes, iForce, iFractals, iGator, iHigh, iHighest, iLow, iLowest, iMA, iMACD,
iMFI, iMomentum, iOBV, iOpen, iOsMA, iRSI, iRVI, iSAR, isConnected, isDemo, iStdDev, isTesting, iStochastic,
isTradeContextBusy, isVisualMode, iTime, iVolume, iWPR, marketInfo, minute, month, objectCreate, objectCreate, objectCreate,
objectDelete, objectGet, objectGetFiboDescription, objectSet, objectSetFiboDescription, objectSetText, objectsTotal, objectType,
orderClose, orderCloseBy, orderClosePrice, orderCloseTime, orderComment, orderCommission, orderDelete, orderExpiration,
orderLots, orderMagicNumber, orderModify, orderOpenPrice, orderOpenTime, orderPrint, orderProfit, orderSelect, orderSend,ordersHistoryTotal, orderStopLoss, ordersTotal, orderSwap, orderSymbol, orderTakeProfit, orderTicket, orderType, print,
refreshRates, seconds, timeCurrent, year
*/
}
}
 
// Java:
                double point = marketInfo( EURUSD, MarketInfo.MODE_POINT);
                double price = marketInfo( EURUSD, MarketInfo.MODE_ASK);
                buyPrice = price;
                int ticket = orderSend(
                        EURUSD,
                        TradeOperation.OP_BUY,
                        1,
                        buyPrice,
                        2,
                        price - 100 * point,
                        price + 100 * point,
                        "" + System. currentTimeMillis(),
                        0,
                        new Date( System. currentTimeMillis() + 60 * 60 * 1000),
                        -1
                );
                System. out. println("---------------------------------------");
                System. out. println("Buy order ticket: " + ticket);
 
 

Bitte Datei hier anhängen. Easyshare ist so wie es ist schlecht. Ich erhalte immer wieder nur die Meldung wait 500 seconds.

 
Wenn es Ihnen nichts ausmacht, erklären Sie bitte, wie MT4 mit Java kommuniziert. Ich selbst habe eine solche Verbindung über eine DLL und das TCP-Protokoll implementiert, daher frage ich mich, wie das bei Ihnen funktioniert?
 
soulmate >> :
Wenn es Ihnen nichts ausmacht, könnten Sie bitte erklären, wie MT4 mit Java kommuniziert? Ich habe es selbst mit Hilfe von dll und TCP-Protokoll gemacht, deshalb frage ich mich, wie es bei Ihnen gemacht wird.

Ich werde versuchen, ein Dokument anzuhängen...

Dateien:
 
rgerasimen >> :

Ich werde versuchen, ein Dokument anzuhängen...

Ich habe es bereits im Archiv gefunden, danke.

 
Keine Docks
Dateien:
jfxv1.2.3.zip  3617 kb
 
Javadoc
Dateien: