julioortahdz/laravel-mt5 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

julioortahdz/laravel-mt5

最新稳定版本:v1.0.0

Composer 安装命令:

composer require julioortahdz/laravel-mt5

包简介

Metatrader 5 Web API Wrapper for Laravel

README 文档

README

This is Laravel 8.x package wrapper library for Metatrader 5 Web API

Documentation

Installing

To install the package, in terminal:

composer require JulioOrtaHdz/laravel-mt5

Configure

If you don't use auto-discovery, add the ServiceProvider to the providers array in config/app.php

JulioOrtaHdz\LaravelMt5\LaravelMt5Provider::class,

Copy the package config to your local config with the publish command:

php artisan vendor:publish --provider="JulioOrtaHdz\LaravelMt5\LaravelMt5Provider"

and then you can configure connection information to MT5 with this .env value

MT5_SERVER_IP=
MT5_SERVER_PORT=
MT5_SERVER_WEB_LOGIN=
MT5_SERVER_WEB_PASSWORD=

Usage

Create Deposit

use JulioOrtaHdz\LaravelMt5\Entities\Trade;
use JulioOrtaHdz\LaravelMt5\LaravelMt5;

$api = new LaravelMt5();
$trade = new Trade();
$trade->setLogin(6000189);
$trade->setAmount(100);
$trade->setComment("Deposit");
$trade->setType(Trade::DEAL_BALANCE);
$result = $api->trade($trade);

The result variable will return Trade class with ticket information, you can grab ticket number by calling $result->getTicket()

Create User

use JulioOrtaHdz\LaravelMt5\Entities\User;
use JulioOrtaHdz\LaravelMt5\LaravelMt5;

$api = new LaravelMt5();
$user = new User();
$user->setName("John Due");
$user->setEmail("john@due.com");
$user->setGroup("demo\demoforex");
$user->setLeverage("50");
$user->setPhone("0856123456");
$user->setAddress("Sukabumi");
$user->setCity("Sukabumi");
$user->setState("Jawa Barat");
$user->setCountry("Indonesia");
$user->setZipCode(1470);
$user->setMainPassword("Secure123");
$user->setInvestorPassword("NotSecure123");
$user->setPhonePassword("NotSecure123");

$result = $api->createUser($user);

Get Trading Account Information

use JulioOrtaHdz\LaravelMt5\LaravelMt5;

$api = new LaravelMt5();
$user = $api->getTradingAccounts($login);

$balance = $user->Balance;
$equity = $user->Equity;
$freeMargin = $user->MarginFree;

Get Trading History By Login Number

use JulioOrtaHdz\LaravelMt5\LaravelMt5;

$api = new LaravelMt5();
// Get Closed Order Total and pagination
$total = $api->getOrderHistoryTotal($exampleLogin, $timestampfrom, $timestampto);
$trades = $api->getOrderHistoryPagination($exampleLogin, $timestampfrom, $timestampto, 0, $total);
foreach ($trades as $trade) {
    // see class MTOrder
    echo "LOGIN : ".$trade->Login.PHP_EOL;
    echo "TICKET : ".$trade->Order.PHP_EOL;
}

Open Order

use JulioOrtaHdz\LaravelMt5\LaravelMt5;
$api = new LaravelMt5();
$api->dealerSend([
    'Login' => 8113,
    'Symbol' => 'XAUUSD',
    'Volume' => 100,
    'Type' => 0
});

The result variable will return User class with login information, you can grab login number by calling $result->getLogin()

Todo

  • Deposit or Withdrawal
  • Create Account
  • Open Order
  • Get Trading Account Information
  • Change Password
  • Create Group
  • Delete Group
  • Get Accounts
  • Remove Account
  • Get Trades
  • Get Group

Contributing

Thank you for considering contributing to the Laravel MT5! you can fork this repository and make pull request.

Security Vulnerabilities

If you discover a security vulnerability within Laravel MT5, please send an e-mail to Julio Orta via julio_oh86@hotmail.com. All security vulnerabilities will be promptly addressed.

统计信息

  • 总下载量: 37
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-05-09