feat: 添加基金监控系统基础功能

添加基金监控系统相关文件,包括邮件发送功能、基金数据配置、测试脚本等。主要包含以下内容:

1. 添加PHPMailer库及相关语言文件
2. 添加基金配置数据文件(fund_config.json, fund_names.json等)
3. 添加邮件发送测试脚本(test_email.php, test_fund_email.php等)
4. 添加.gitignore文件忽略不必要的文件
5. 添加composer.json配置依赖

Signed-off-by: LL <LL>
This commit is contained in:
LL
2025-12-12 14:14:07 +08:00
commit 0cfefbebd8
106 changed files with 26164 additions and 0 deletions

446
composer.lock generated Normal file
View File

@@ -0,0 +1,446 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "7fe6ed9149491f865075a222db8f3a4a",
"packages": [
{
"name": "ccxt/ccxt",
"version": "1.53.1",
"source": {
"type": "git",
"url": "https://github.com/ccxt/ccxt.git",
"reference": "df03acf6997ff35ee84abadc80bebcbe13e5efdc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/ccxt/ccxt/zipball/df03acf6997ff35ee84abadc80bebcbe13e5efdc",
"reference": "df03acf6997ff35ee84abadc80bebcbe13e5efdc",
"shasum": ""
},
"require": {
"ext-bcmath": "*",
"ext-curl": "*",
"ext-iconv": "*",
"ext-json": "*",
"ext-openssl": "*",
"ext-pcre": "*",
"pear/console_table": "1.3.1",
"php": ">=5.4.0",
"symfony/polyfill-mbstring": "^1.7"
},
"suggest": {
"clue/buzz-react": "Required for asynchronous API calls to exchanges with PHP",
"clue/http-proxy-react": "Required for using a proxy when doing asynchronous API calls to exchanges with PHP",
"react/event-loop": "Required for asynchronous API calls to exchanges with PHP",
"recoil/react": "Required for asynchronous API calls to exchanges with PHP",
"recoil/recoil": "Required for asynchronous API calls to exchanges with PHP"
},
"type": "library",
"autoload": {
"files": [
"ccxt.php"
],
"psr-4": {
"ccxt\\": "php/",
"ccxt_async\\": "php/async/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Igor Kroitor",
"email": "igor.kroitor@gmail.com",
"homepage": "https://github.com/kroitor",
"role": "Developer"
},
{
"name": "Vitaly Gordon",
"email": "rocket.mind@gmail.com",
"homepage": "https://github.com/xpl",
"role": "Developer"
},
{
"name": "Carlo Revelli",
"email": "carlo.revelli@berkeley.edu",
"homepage": "https://github.com/frosty00",
"role": "Junior Developer"
}
],
"description": "A JavaScript / Python / PHP cryptocurrency trading library with support for more than 90 bitcoin/altcoin exchanges",
"homepage": "https://github.com/ccxt/ccxt",
"keywords": [
"1BTCXE",
"1Broker",
"ACX",
"ANX",
"ANXPro",
"BL3P",
"BTC Markets",
"BTC Trade UA",
"BTCC",
"BTCChina",
"BTCExchange",
"BTCTrader",
"BTCTurk",
"BTCX",
"BX.in.th",
"Bit2C",
"BitBay",
"BitBays",
"BitMEX",
"BitMarket",
"Bitcoin.co.id",
"Bleutrade",
"BlinkTrade",
"BtcBox",
"Bter.com",
"C-CEX",
"CEX.IO",
"CHBTC",
"CNY",
"ChileBit",
"CoinMate",
"CoinSpot",
"Coinsecure",
"Crypto Capital",
"DOGE",
"EUR",
"EXMO",
"FYB-SE",
"FYB-SG",
"FoxBit",
"Gatecoin",
"Gemini",
"Huobi",
"HuobiPRO",
"LakeBTC",
"Liqui",
"LiveCoin",
"OKCoin",
"OKCoin.cn",
"OKCoin.com",
"OKEX",
"Paymium",
"Poloniex",
"QUOINE",
"Qryptos",
"QuadrigaCX",
"Southxchange",
"SurBitcoin",
"TheRockTrading",
"Tidex",
"USD",
"UrduBit",
"VBTC",
"Vaultoro",
"VirWoX",
"Wex",
"YoBit",
"Zaif",
"acx.io",
"algorithmic",
"algotrading",
"altcoin",
"altcoins",
"api",
"arbitrage",
"backtest",
"backtesting",
"binance",
"binance.com",
"bit2c.co.il",
"bitcoin",
"bitcoincoid",
"bitfinex",
"bitflyer",
"bitflyer.jp",
"bithumb",
"bithumb.com",
"bitlish",
"bitso",
"bitstamp",
"bittrex",
"bleutrade.com",
"bot",
"btc",
"btc-e",
"btc-trade.com.ua",
"btc-x",
"btcbox.co.jp",
"btce",
"btcexchange.ph",
"btcmarkets",
"btcmarkets.net",
"btctrader.com",
"btcturk.com",
"bter",
"ccex",
"cex",
"chilebit.net",
"coin",
"coincheck",
"coingi",
"coingi.com",
"coinmarketcap",
"coins",
"coinspot.com.au",
"crypto",
"crypto currency",
"crypto market",
"cryptocapital.co",
"cryptocurrency",
"currencies",
"currency",
"darkcoin",
"dash",
"digital currency",
"dogecoin",
"dsx",
"dsx.uk",
"e-commerce",
"etc",
"eth",
"ether",
"ethereum",
"exchange",
"exchanges",
"flowBTC",
"flowbtc.com",
"foxbit.exchange",
"framework",
"gdax",
"hitbtc",
"huobi.pro",
"independent reserve",
"independentreserve.com",
"invest",
"investing",
"investor",
"itBit",
"jubi.com",
"kraken",
"lakebtc.com",
"library",
"light",
"liqui.io",
"litecoin",
"ltc",
"luno",
"market",
"market data",
"markets",
"mercado",
"mercadobitcoin",
"mercadobitcoin.br",
"merchandise",
"merchant",
"minimal",
"mixcoins",
"mixcoins.com",
"nova",
"novaexchange",
"novaexchange.com",
"okex.com",
"order",
"order book",
"orderbook",
"price",
"price data",
"pricefeed",
"private",
"public",
"ripple",
"strategy",
"surbitcoin.com",
"tidex.com",
"toolkit",
"trade",
"trader",
"trading",
"urdubit.com",
"vbtc.exchange",
"vbtc.vn",
"volume",
"wex.nz",
"xBTCe",
"xbt",
"xbtce.com",
"xrp",
"yobit.net",
"yunbi",
"zec",
"zerocoin"
],
"support": {
"issues": "https://github.com/ccxt/ccxt/issues",
"source": "https://github.com/ccxt/ccxt/tree/1.53.1"
},
"funding": [
{
"url": "https://opencollective.com/ccxt",
"type": "open_collective"
}
],
"time": "2021-07-13T22:50:19+00:00"
},
{
"name": "pear/console_table",
"version": "v1.3.1",
"source": {
"type": "git",
"url": "https://github.com/pear/Console_Table.git",
"reference": "1930c11897ca61fd24b95f2f785e99e0f36dcdea"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/pear/Console_Table/zipball/1930c11897ca61fd24b95f2f785e99e0f36dcdea",
"reference": "1930c11897ca61fd24b95f2f785e99e0f36dcdea",
"shasum": ""
},
"require": {
"php": ">=5.2.0"
},
"suggest": {
"pear/Console_Color2": ">=0.1.2"
},
"type": "library",
"autoload": {
"classmap": [
"Table.php"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-2-Clause"
],
"authors": [
{
"name": "Jan Schneider",
"homepage": "http://pear.php.net/user/yunosh"
},
{
"name": "Tal Peer",
"homepage": "http://pear.php.net/user/tal"
},
{
"name": "Xavier Noguer",
"homepage": "http://pear.php.net/user/xnoguer"
},
{
"name": "Richard Heyes",
"homepage": "http://pear.php.net/user/richard"
}
],
"description": "Library that makes it easy to build console style tables.",
"homepage": "http://pear.php.net/package/Console_Table/",
"keywords": [
"console"
],
"support": {
"issues": "http://pear.php.net/bugs/search.php?cmd=display&package_name[]=Console_Table",
"source": "https://github.com/pear/Console_Table"
},
"time": "2018-01-25T20:47:17+00:00"
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493",
"reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493",
"shasum": ""
},
"require": {
"ext-iconv": "*",
"php": ">=7.2"
},
"provide": {
"ext-mbstring": "*"
},
"suggest": {
"ext-mbstring": "For best performance"
},
"type": "library",
"extra": {
"thanks": {
"url": "https://github.com/symfony/polyfill",
"name": "symfony/polyfill"
}
},
"autoload": {
"files": [
"bootstrap.php"
],
"psr-4": {
"Symfony\\Polyfill\\Mbstring\\": ""
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Nicolas Grekas",
"email": "p@tchwork.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony polyfill for the Mbstring extension",
"homepage": "https://symfony.com",
"keywords": [
"compatibility",
"mbstring",
"polyfill",
"portable",
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.33.0"
},
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://github.com/nicolas-grekas",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2024-12-23T08:48:59+00:00"
}
],
"packages-dev": [],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": {},
"prefer-stable": false,
"prefer-lowest": false,
"platform": {},
"platform-dev": {},
"plugin-api-version": "2.6.0"
}