Reitings: Empty Star Empty Star Empty Star Empty Star Empty Star
is LMAX proper
Iepriekšējās 1 2 Nākamais
sarauharrison

Biedrs kopš Jul 16, 2012  12 ieraksti sarauharrison Jul 21 2012 at 15:30
FROM THEIR WEBSITE:
Price you see = price you get - There are no dealers on the LMAX Exchange, making Forex and CFD trading on the LMAX Exchange neutral and transparent. With no dealer intervention - requotes are a thing of the past - our cutting-edge technology purely and simply matches clients’ best bids to the best offers. [^]


i am not sure how this is possible. if their servers determine that a particular instrument is available to be traded at $X, and then they transmit that price to be displayed on my terminal, and then i (or my software) clicks on a buy or sell button, how is it possible that by the time that my order gets back to them that said price is guaranteed to be still available?

they must be doing something very clever, and i would like to understand how they do it.


fxmtf

Biedrs kopš Jul 03, 2012  6 ieraksti fxmtf Jul 21 2012 at 18:24
To address the general confusion between ECN and MTF please see a diagram below:



Source: Inraido Trading Limited
Pielikumi:

Partner LMAX Exchange
sarauharrison

Biedrs kopš Jul 16, 2012  12 ieraksti sarauharrison Jul 22 2012 at 06:39 (labots Jul 22 2012 at 07:02 )
hello,

this organization is most definitely operating as an exchange, something of a closed circuit exchange, but an exchange nevertheless.

my thinking is that the only issue/drawback to the issue that it is operating as a closed circuit exchange might be that the size of their order book might not be that big of a book, but if that book should become large or larger, this is quite possibly going to be the cool cat trading server system, and that is a good thing.

assuming that i do in fact understand the mechanics of their trading servers, lol, which i probably do not fully understand the mechanics of their system and therefore it is my suggestion that we get something of a more detailed explanation of the above flowchart, not everybody that trades knows how to read flowcharts and it is just good practice to go ahead and write a full explanation of any flowchart that is as promising as the above flowchart. ;)

regarding the issue that they are owned by some kind of betting company, i would like to be the first to come forward and recognize that this is not a negative sign for a company like this, this is actually something that this company should sing about and they should wear this betting company issue like it is a badge of honor. personally, i like the idea that some pimps are in the house and that they just might know how to take care of some trading business.

my best wishes to you in your work.





sarauharrison

Biedrs kopš Jul 16, 2012  12 ieraksti sarauharrison Jul 22 2012 at 08:03
i am almost embarassed that i was going to even ask if you have an api.

https://www.lmax.com/trading-tech/api-trading

this is really too way way cool.

srsly.

SAMPLE JAVA CODE:

package com.lmax.api;

import com.lmax.api.account.LoginCallback;
import com.lmax.api.account.LoginRequest;
import com.lmax.api.account.LoginRequest.ProductType;
import com.lmax.api.order.Execution;
import com.lmax.api.order.ExecutionEventListener;
import com.lmax.api.order.MarketOrderSpecification;
import com.lmax.api.order.Order;
import com.lmax.api.order.OrderCallback;
import com.lmax.api.order.OrderEventListener;
import com.lmax.api.order.OrderSubscriptionRequest;
import com.lmax.api.orderbook.OrderBookEvent;
import com.lmax.api.orderbook.OrderBookEventListener;
import com.lmax.api.orderbook.OrderBookSubscriptionRequest;
import com.lmax.api.profile.Timer;
import com.lmax.api.reject.InstructionRejectedEvent;
import com.lmax.api.reject.InstructionRejectedEventListener;

public class LoginClient implements LoginCallback, OrderBookEventListener, OrderEventListener, InstructionRejectedEventListener, ExecutionEventListener
{
    private final class DefaultCallback implements Callback
    {
        public void onSuccess()
        {
        }

        @Override
        public void onFailure(final FailureResponse failureResponse)
        {
            throw new RuntimeException('Failed');
        }
    }


    private Session session;
    private final long instrumentId;
    private FixedPointNumber side = FixedPointNumber.ZERO;
    private long orderCount = 0;
    private long executionCount = 0;
    private long rejectionCount = 0;

    public LoginClient(long instrumentId)
    {
        this.instrumentId = instrumentId;
    }

    @Override
    public void notify(OrderBookEvent orderBookEvent)
    {
        if (side.equals(FixedPointNumber.ZERO))
        {
            side = FixedPointNumber.ONE;
            placeOrder(side);
        }
    }
    
    @Override
    public void notify(InstructionRejectedEvent instructionRejected)
    {
        rejectionCount++;
        placeOrder(side);
        
        System.out.println(instructionRejected.getReason());
    }
    
    @Override
    public void notify(Execution execution)
    {
    }
    
    @Override
    public void notify(Order order)
    {
        executionCount++;
        side = side.negate();
        placeOrder(side);
    }
    
    private void placeOrder(FixedPointNumber side)
    {
        if (orderCount > 2 && (orderCount % 50 == 0 || orderCount % 50 == 1))
        {
            session.placeMarketOrder(new MarketOrderSpecification(instrumentId, new FixedPointNumber(500000000), TimeInForce.IMMEDIATE_OR_CANCEL), placeOrderCallback);
        }
        else
        {
            session.placeMarketOrder(new MarketOrderSpecification(instrumentId, side, TimeInForce.IMMEDIATE_OR_CANCEL), placeOrderCallback);
        }
    }

    private final OrderCallback placeOrderCallback = new OrderCallback()
    {
        @Override
        public void onSuccess(long instructionId)
        {
            if (orderCount % 10 == 0)
            {
                System.out.printf('Orders: %d, Executions: %d, Rejections: %d, Net: %d%n', orderCount, executionCount, rejectionCount, orderCount - (executionCount + rejectionCount));
            }
            
            orderCount++;
        }

        @Override
        public void onFailure(FailureResponse failureResponse)
        {
            System.out.println(failureResponse);
        }
    };

    @Override
    public void onLoginSuccess(Session session)
    {
        System.out.println('My accountId is: ' + session.getAccountDetails().getAccountId());

        this.session = session;
        this.session.registerOrderBookEventListener(this);
        this.session.registerOrderEventListener(Timer.forOrderEvents(this));
        this.session.registerInstructionRejectedEventListener(Timer.forInstructionRejectedEvents(this));
        this.session.registerExecutionEventListener(Timer.forExecutionEvents(this));

        session.subscribe(new OrderBookSubscriptionRequest(instrumentId), new DefaultCallback());
        session.subscribe(new OrderSubscriptionRequest(), new DefaultCallback());

        session.start();
    }

    @Override
    public void onLoginFailure(FailureResponse failureResponse)
    {
        System.out.println('Login Failed: ' + failureResponse);
    }


    public static void main(String[] args)
    {
        if (args.length != 4)
        {
            System.out.println('Usage ' + LoginClient.class.getName() + ' <url> <username> <password> [CFD_DEMO|CFD_LIVE]');
            System.exit(-1);
        }
        
        String url = args[0];
        String username = args[1];
        String password = args[2];
        ProductType productType = ProductType.valueOf(args[3].toUpperCase());

        LmaxApi lmaxApi = new LmaxApi(url);
        LoginClient loginClient = new LoginClient(4001);

        lmaxApi.login(new LoginRequest(username, password, productType), loginClient);
    }
}

sarauharrison

Biedrs kopš Jul 16, 2012  12 ieraksti sarauharrison Jul 22 2012 at 08:16 (labots Jul 22 2012 at 08:23 )
this lmax company is really going to be big.

just thinking out loud.



iwillsurvive

Biedrs kopš May 21, 2011  47 ieraksti iwillsurvive May 19 2014 at 14:51
Quoting Sarauharrison,

I agree with you very much. I had a meeting with Andreas Wigstrom from LMAX (one of the partners of LMAX) and they are looking to expand largely into Asia, either Singapore, Hong Kong or Japan within the next 5 years.

Reading from their site, they are also trying to move away from retail, and more towards instituitional volumes, which would explain why they have java API trading, as pointed out by Sarauharrison earlier.

The reason I met up with Andreas for LMAX is because I am an IB for LMAX (as per my signature below - Abundance Trading Group) and we negotiated a 12% commission discount for LMAX traders

Armada Markets 5% discount, Axitrader $1.50 discount, IC markets $1.50 disc, LMAX 12% discount, Price Markets 5% disc, FinFX (accepts US traders) $0.7 ECN disc, Global Prime $1.50 discount, SynergyFX $3.50 discount, Blackwell Global $6 rebates - Abundance Trading
susantasaren

Biedrs kopš Feb 10, 2013  10 ieraksti FCashbackRebate (susantasaren) Jul 17 2014 at 10:34
LMAX have MTF Execution Type which is better than ECN.

Although they are more oriented towards Institutional Volumes, but they are still available for Retail Clients.

Usually their Initial account opening deposit is $10000 but I can get it open for anyone interested for $1000 deposit to try them out. You will also be getting 16% Commission discount.

Highest Forex Cashback & Rebates Paid only at -
dacash

Biedrs kopš Sep 30, 2013  25 ieraksti M (dacash) Jul 17 2014 at 19:31
You can't hedge with Lmax and they don't like news traders. Just so people know.

If you don't try, you will never know.
Lūdzu ienāciet, lai komentētu.
Rightmove House Price Index (YoY) (1 day)
The Wall Street Journal: Trump slams soc...(25 min ago)
EURUSD 1.14416 GBPUSD 1.27513
USDJPY 110.517 USDCAD 1.30629

Tools

Kopiena

Apskats

Brokeri

Platforma

Atbalsts


Twitter |  Facebook |  Lapas karte  |  Noteikumi  |   Privacy Policy
©2018 Myfxbook Ltd. All Rights Reserved.
HIGH RISK WARNING: Foreign exchange trading carries a high level of risk that may not be suitable for all investors. Leverage creates additional risk and loss exposure. Before you decide to trade foreign exchange, carefully consider your investment objectives, experience level, and risk tolerance. You could lose some or all of your initial investment; do not invest money that you cannot afford to lose. Educate yourself on the risks associated with foreign exchange trading, and seek advice from an independent financial or tax advisor if you have any questions. Any data and information is provided 'as is' solely for informational purposes, and is not intended for trading purposes or advice.