/** * @param Order $order * @return Response */ public function sendOrder(Order $order) { $url = sprintf("%s/venues/%s/stocks/%s/orders", $this->getUrl(), $order->getVenue(), $order->getSymbol()); $response = new Response(); try { $request = $this->client->post($url, ['json' => $order->toJson()]); $response->parseFromJson($request->getBody()); } catch (RequestException $e) { // Do some magic Things... } return $response; }
<?php if (!($loader = (include __DIR__ . '/../vendor/autoload.php'))) { die('You must set up the project dependencies.'); } use Twinsen\StockFighterApi\Models\Order\Constants; use Twinsen\StockFighterApi\Models\Order\Request\Order; use Twinsen\StockFighterApi\Models\Manager\OrderManager; use GuzzleHttp\Handler\MockHandler; use GuzzleHttp\HandlerStack; use GuzzleHttp\Psr7\Response; $order = new Order(); $order->setSymbol('BAR'); $order->setVenue('FOOEX'); $order->setDirection(Constants::DIRECTION_BUY); $order->setQty(20); $order->setPrice(5100); $order->setType(Constants::TYPE_LIMIT); $order->setAccount('OGB12345'); $orderResponseJson = ' { "ok": true, "symbol": "BAR", "venue": "FOOEX", "direction": "buy", "originalQty": 100, "qty": 20, "price": 5100, "type": "limit", "id": 12345, "account" : "OGB12345",