PHPackages                             spoiledwit/meta-five - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. spoiledwit/meta-five

ActiveLibrary[API Development](/categories/api)

spoiledwit/meta-five
====================

Metatrader 5 Web API Wrapper for Laravel

016PHP

Since Mar 11Pushed 2y agoCompare

[ Source](https://github.com/spoiledwit/meta-five)[ Packagist](https://packagist.org/packages/spoiledwit/meta-five)[ RSS](/packages/spoiledwit-meta-five/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Meta Five
---------

[](#meta-five)

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

- [Official MT5 Web Api Documentation](https://support.metaquotes.net/en/docs/mt5/api/webapi).

Documentation
-------------

[](#documentation)

### Packagist

[](#packagist)

.

### Installing

[](#installing)

To install the package, in terminal:

```
composer require aleedhillon/meta-five

```

### Configure

[](#configure)

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

```
AleeDhillon\MetaFive\MetaFiveProvider::class,

```

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

[](#copy-the-package-config-to-your-local-config-with-the-publish-command)

```
php artisan vendor:publish --tag=meta-five-config
```

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
-----

[](#usage)

### Create Deposit

[](#create-deposit)

You can withdraw money by giving negetive number to the same `trade` method.

```
use AleeDhillon\MetaFive\Entities\Trade;
use AleeDhillon\MetaFive\Facades\Client;

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

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

### Create User

[](#create-user)

```
use AleeDhillon\MetaFive\Entities\User;
use AleeDhillon\MetaFive\Facades\Client;

$user = new User();
$user->setName("John Doe");
$user->setEmail("johndoe@example.com");
$user->setGroup("demo\demoforex");
$user->setLeverage("50");
$user->setPhone("0123456789");
$user->setAddress("Lahore");
$user->setCity("Lahore");
$user->setState("Punjab");
$user->setCountry("Pakistan");
$user->setZipCode(1470);
$user->setMainPassword("secret");
$user->setInvestorPassword("secret");
$user->setPhonePassword("secret");

$result = Client::createUser($user);
```

### Get Trading Account Information

[](#get-trading-account-information)

```
use AleeDhillon\MetaFive\Facades\Client;

$user = Client::getTradingAccounts($login);

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

### Get Trading History By Login Number

[](#get-trading-history-by-login-number)

```
use AleeDhillon\MetaFive\Facades\Client;

// Get Closed Order Total and pagination
$total = Client::getOrderHistoryTotal($exampleLogin, $timestampfrom, $timestampto);
$trades = Client::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

[](#open-order)

```
use AleeDhillon\MetaFive\Facades\Client;
Client::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

[](#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

This is work in progress, I will may be improve this package or rewrite the entire one with Laravel 9 and PHP 8 Support. In this revisioin I haven't touched much to the core in next I intend to rewrite the core.

Credits
-------

[](#credits)

Thanx to [Tarikh Agustia](https://github.com/tarikhagustia) who wrote the following two packges from which I have rewritten this current package with improvements like the Laravel singleton pattern for speed and reducing API calls to MT5.

-
-

Contributing
------------

[](#contributing)

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

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

If you discover a security vulnerability within MetaFive, please send an e-mail to Ali A. Dhillon via [aleedhx@gmail.com](aleedhx@gmail.com). All security vulnerabilities will be promptly addressed.

License
-------

[](#license)

The MetaFive packge is open-source software licensed under the [MIT license](https://opensource.org/licenses/MIT).

###  Health Score

14

—

LowBetter than 2% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity19

Early-stage or recently created project

 Bus Factor1

Top contributor holds 70% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/3d22888754c1d7c9dd8d3b4809aee46a0aa01ade526f6102e0c729744ab5162f?d=identicon)[spoiledwit](/maintainers/spoiledwit)

---

Top Contributors

[![aleedhillon](https://avatars.githubusercontent.com/u/13802089?v=4)](https://github.com/aleedhillon "aleedhillon (7 commits)")[![spoiledwit](https://avatars.githubusercontent.com/u/86194596?v=4)](https://github.com/spoiledwit "spoiledwit (3 commits)")

### Embed Badge

![Health badge](/badges/spoiledwit-meta-five/health.svg)

```
[![Health](https://phpackages.com/badges/spoiledwit-meta-five/health.svg)](https://phpackages.com/packages/spoiledwit-meta-five)
```

###  Alternatives

[stripe/stripe-php

Stripe PHP Library

4.0k143.3M480](/packages/stripe-stripe-php)[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M272](/packages/twilio-sdk)[facebook/php-business-sdk

PHP SDK for Facebook Business

90821.9M34](/packages/facebook-php-business-sdk)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

74513.7M114](/packages/meilisearch-meilisearch-php)[google/gax

Google API Core for PHP

265103.1M454](/packages/google-gax)[google/common-protos

Google API Common Protos for PHP

173103.7M50](/packages/google-common-protos)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
