asolonytskyi/laravel-taapio

一个用于与 TAAPI.io 集成的 Laravel 扩展包

1.0.1 2024-07-20 15:05 UTC

This package is auto-updated.

Last update: 2024-09-20 15:29:57 UTC


README

一个用于从 TAAPI.io 获取各种金融指标的 Laravel 扩展包。

安装

  1. 通过 Composer 安装此包

    composer require asolonytkyi/laravel-taapio
  2. 发布配置文件

    php artisan vendor:publish --provider="ASolonytkyi\Taapi\Containers\Taapi\Providers\TaapiServiceProvider"
  3. 将您的 TAAPI.io API 密钥添加到您的 .env 文件中

    TAAPI_API_KEY=your_api_key_here

配置

包配置文件位于 config/taapi.php。您可以根据需要自定义配置。

用法

获取单个指标

要获取单个指标,请使用 getIndicator 方法

use ASolonytkyi\Taapi\Containers\Taapi\Facades\Taapi;
use ASolonytkyi\Taapi\Containers\Taapi\Constants\Exchanges;
use ASolonytkyi\Taapi\Containers\Taapi\Constants\Intervals;
use ASolonytkyi\Taapi\Containers\Taapi\Constants\Indicators;

$data = Taapi::getIndicator(Indicators::ADX, [
    'exchange' => Exchanges::BINANCE,
    'symbol' => 'BTC/USDT',
    'interval' => Intervals::ONE_HOUR,
    'backtrack' => 5,
    'chart' => 'candlestick',
    'addResultTimestamp' => true,
    'gaps' => false,
    'results' => 'json',
    'period' => 14,
    'multiplier' => 1.5,
]);

print_r($data);

获取多个指标

要在一个请求中获取多个指标,请使用 getIndicators 方法

use ASolonytkyi\Taapi\Containers\Taapi\Facades\Taapi;
use ASolonytkyi\Taapi\Containers\Taapi\Constants\Exchanges;
use ASolonytkyi\Taapi\Containers\Taapi\Constants\Intervals;
use ASolonytkyi\Taapi\Containers\Taapi\Constants\Indicators;

$data = Taapi::getIndicators([
    'exchange' => Exchanges::BINANCE,
    'symbol' => 'BTC/USDT',
    'interval' => Intervals::ONE_MINUTE,
    'indicators' => [
        [
            'indicator' => Indicators::SUPER_TREND,
            'period' => 20,
            'multiplier' => 12.0,
        ],
        [
            'indicator' => Indicators::CMO,
            'period' => 20,
        ],
        [
            'indicator' => Indicators::RSI,
            'period' => 20,
        ],
        [
            'indicator' => Indicators::TANH,
            'period' => 20,
        ],
        [
            'indicator' => Indicators::EMA,
            'period' => 20,
        ],
        [
            'indicator' => Indicators::EOM,
            'period' => 20,
        ],
    ],
]);

print_r($data);

可用指标

以下指标可供使用

  • Indicators::SUPER_TREND
  • Indicators::CMO
  • Indicators::RSI
  • Indicators::TANH
  • Indicators::EMA
  • Indicators::EOM
  • Indicators::ADX
  • 更多

可用交易所

以下 交易所 可供使用

  • Exchanges::BINANCE
  • Exchanges::BINANCE_FUTURES
  • Exchanges::BITSTAMP
  • Exchanges::WHITEBIT
  • Exchanges::BYBIT
  • Exchanges::GATEIO
  • Exchanges::COINBASE
  • Exchanges::BINANCE_US
  • Exchanges::KRAKEN

可用区间

以下 区间 可供使用

  • Intervals::ONE_MINUTE
  • Intervals::FIVE_MINUTES
  • Intervals::FIFTEEN_MINUTES
  • Intervals::THIRTY_MINUTES
  • Intervals::ONE_HOUR
  • Intervals::TWO_HOURS
  • Intervals::FOUR_HOURS
  • Intervals::TWELVE_HOURS
  • Intervals::ONE_DAY

错误处理

错误将被处理,并以包含 statusmessagestatusCode 键的数组形式返回。示例

$data = Taapi::getIndicator('invalid_indicator', [
    'exchange' => Exchanges::BINANCE,
    'symbol' => 'BTC/USDT',
    'interval' => Intervals::ONE_HOUR,
]);

if ($data['status'] === 'error') {
    echo 'Error: ' . $data['message'];
}

许可证

此包是开源软件,受 MIT 许可证 许可。

作者

  • Alexandr Solonytskyi

有关更多信息,请访问 TAAPI.io 文档