Files
investbrain/app/Interfaces/MarketData/MarketDataInterface.php
T

35 lines
836 B
PHP
Raw Normal View History

2024-08-01 13:53:10 -05:00
<?php
namespace App\Interfaces\MarketData;
use App\Interfaces\MarketData\Types\Quote;
2025-01-28 17:14:49 -06:00
use Illuminate\Support\Collection;
2024-08-01 13:53:10 -05:00
interface MarketDataInterface
{
/**
* Does this symbol actually exist?
*/
2025-01-28 17:14:49 -06:00
public function exists(string $symbol): bool;
2024-08-01 13:53:10 -05:00
/**
* Get quote data
*/
2025-01-28 17:14:49 -06:00
public function quote(string $symbol): Quote;
2024-08-01 13:53:10 -05:00
/**
* Get dividend data
*/
2025-01-28 17:14:49 -06:00
public function dividends(string $symbol, \DateTimeInterface $startDate, \DateTimeInterface $endDate): Collection;
2024-08-01 13:53:10 -05:00
/**
* Get split data
*/
2025-01-28 17:14:49 -06:00
public function splits(string $symbol, \DateTimeInterface $startDate, \DateTimeInterface $endDate): Collection;
2024-09-09 20:50:18 -05:00
/**
* Get historical close data
*/
2025-01-28 17:14:49 -06:00
public function history(string $symbol, \DateTimeInterface $startDate, \DateTimeInterface $endDate): Collection;
2024-08-01 13:53:10 -05:00
}