PHP code example of linwj / ftx

1. Go to this page and download the library: Download linwj/ftx library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

linwj / ftx example snippets


//spot
use Lin\Ftx\Ftx;
$ftx=new Ftx();
//or
$ftx=new Ftx($key,$secret);

//You can set special needs
$ftx->setOptions([
    //Set the request timeout to 60 seconds by default
    'timeout'=>10,

    //https://github.com/guzzle/guzzle
    //'proxy'=>[],

    //https://www.php.net/manual/en/book.curl.php
    //'curl'=>[],

    //FTX-SUBACCOUNT (optional): URI-encoded name of the subaccount to use. Omit if not using subaccounts.
    //'headers'=>['FTX-SUBACCOUNT'=>'xxxx']
]);

$ftx=new Ftx();

try {
    $result=$ftx->markets()->gets();
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}

try {
    $result=$ftx->markets()->get([
        'market_name'=>'BTC/USD',// BTC/USD   BTC-PERP  BTC-0626
        //'depth'=>'10'
    ]);
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}

try {
    $result=$ftx->markets()->getOrderBook([
        'market_name'=>'BTC-PERP',// BTC/USD   BTC-PERP  BTC-0626
        //'depth'=>'10'
    ]);
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}

try {
    $result=$ftx->markets()->getTrades([
        'market_name'=>'BTC-0626',// BTC/USD   BTC-PERP  BTC-0626
        //'depth'=>'10'
    ]);
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}

try {
    $result=$ftx->markets()->getCandles([
        'market_name'=>'BTC-0628',// BTC/USD   BTC-PERP  BTC-0626
        'resolution'=>'60'
    ]);
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}

$ftx=new Ftx($key,$secret);

try {
    $result=$ftx->account()->get();
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}


try {
    $result=$ftx->account()->getPositions();
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}

$ftx=new Ftx($key,$secret);

try {
    $result=$ftx->orders()->post([
        'market'=>'BTC/USD',
        'side'=>'buy',
        'price'=>'10000',
        'type'=>'limit',
        'size'=>'1',
        //'clientId'=>'1234567890',
    ]);
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}

try {
    $result=$ftx->orders()->get([
        'order_id'=>'1234567890',
    ]);
    print_r($result);

    $result=$ftx->orders()->getByClientId([
        'client_order_id'=>'1234567890',
    ]);
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}


try {
    $result=$ftx->orders()->delete([
        'order_id'=>'1234567890',
    ]);
    print_r($result);

    $result=$ftx->orders()->deleteByClientId([
        'client_order_id'=>'1234567890',
    ]);
    print_r($result);
}catch (\Exception $e){
    print_r($e->getMessage());
}