'on', // Stats for blockchain networks 'on-chain-stats' => 'on', // Track how much you pay in TOTAL interest MONTHLY on ALL your debt (credit cards, auto / personal / mortgage loan, etc) 'debt-interest-tracker' => 'on', // Recurring Reminder plugin (alert yourself every X days to do something) 'recurring-reminder' => 'off', // Price target alert plugin (alert yourself when an asset's price target is reached) 'price-target-alert' => 'off', // Alerts for BTC / ETH / [SOL|SPL Token] address balance changes (when coins are sent / received) 'address-balance-tracker' => 'off', // WORK-IN-PROGRESS, NOT FUNCTIONAL YET! 'crypto-info-bot' => 'off', ); // END //////////////////////////////////////// // !END! PLUGINS CONFIG //////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////// // !START! POWER USER CONFIGURATION (ADJUST WITH CARE, OR YOU CAN BREAK THE APP!) ///////////////////////////////////////////////////////////////////////////// // Enable / disable PHP error reporting (to error logs on the app server) // https://www.php.net/manual/en/function.error-reporting.php $ct['conf']['power']['php_error_reporting'] = 0; // 0 == off / -1 == on // $ct['conf']['power']['debug_mode'] enabled runs unit tests during ui runtimes (during webpage load), // errors detected are error-logged and printed as alerts in header alert bell area // It also logs ui / cron runtime telemetry to /cache/logs/app_log.log, AND /cache/logs/debug/ //////////////////////////////////////////////////////////////////////////////////////////// //// // ### GENERAL ### //// // 'off' (disables), //// // ### TELEMETRY ### //// // 'conf_telemetry' (ct['conf'] caching), // 'light_chart_telemetry' (light chart caching), // 'memory_usage_telemetry' (PHP system memory usage), // 'ext_data_live_telemetry' (external API requests from server), // 'ext_data_cache_telemetry' (external API requests from cache), // 'file_save_telemetry' (saving files to cache), // 'smtp_telemetry' (smtp server responses to: /cache/logs/smtp_debug.log), // 'api_comms_telemetry' (API comms responses to: /cache/logs/debug/external_data/last-response-[service].log), // 'cron_telemetry' (cron runtime telemetry to: /cache/logs/debug/cron/cron_runtime_telemetry.log), //// // ### VIEW INPUT / OUTPUT (ON INTERFACE PAGES) ### //// // 'setup_wizards_io' (AJAX-based 'wizard' steps), //// // ### CHECKS ### //// // 'markets' (asset market checks), // 'texts' (mobile texting gateway checks), // 'alerts_charts' (price chart / price alert checks), // 'api_throttling' (API throttling checks), //// // ### SUMMARIES ### //// // 'stats' (hardware / software / runtime summary), // 'markets_conf' (outputs a markets configuration summary), //// //////////////////////////////////////////////////////////////////////////////////////////// // UNIT TESTS ('CHECKS' SECTION) WILL ONLY RUN DURING WEB PAGE INTERFACE RUNTIMES // PHP MAX EXECUTION TIME *SHOULD* AUTO-SET TO 1320 SECONDS (22 MINUTES) IN *ANY* DEBUG MODE (EXCEPT 'off') // DON'T LEAVE DEBUGGING ENABLED AFTER USING IT, THE /cache/logs/app_log.log AND /cache/logs/debug/ // LOG FILES !CAN GROW VERY QUICKLY IN SIZE! EVEN AFTER JUST A FEW RUNTIMES! $ct['conf']['power']['debug_mode'] = 'off'; // Level of detail / verbosity in log files. 'normal' logs minimal details (basic information), // 'verbose' logs maximum details (additional information IF AVAILABLE, for heavy debugging / tracing / etc) // IF DEBUGGING IS ENABLED ABOVE, LOGS ARE AUTOMATICALLY VERBOSE #WITHOUT THE NEED TO ADJUST THIS SETTING# $ct['conf']['power']['log_verbosity'] = 'normal'; // 'normal' / 'verbose' // If you want to override the default CURL user agent string (sent with API requests, etc) // Adding a string here automatically enables that as the custom curl user agent // LEAVING BLANK '' USES THE DEFAULT CURL USER AGENT LOGIC BUILT-IN TO THIS APP (WHICH INCLUDES ONLY BASIC SYSTEM CONFIGURATION STATS) $ct['conf']['power']['override_curl_user_agent'] = ''; // MINUTES to wait until running consecutive desktop edition emulated cron jobs // (HOW OFTEN BACKGROUND TASKS ARE RUN...#NOT# USED IN SERVER EDITION) // SET TO ZERO DISABLES EMULATED CRON JOBS ON #DESKTOP EDITIONS# // DON'T SET TOO LOW, OR EXCHANGE PRICE DATA MAY BE BLOCKED / THROTTLED TEMPORARILY ON OCASSION! // IF USING ADD-WIN10-SCHEDULER-JOB.bat, #THIS SETTING NEEDS TO BE DISABLED# OR THE SCHEDULED TASK WILL #NOT# BE ALLOWED TO RUN! // IF YOU CHANGE THIS SETTING, YOU *MUST* RESTART / RELOAD THE APP *AFTERWARDS*! $ct['conf']['power']['desktop_cron_interval'] = 20; // (default = 20, 0 disables this feature) // Delete visitor stats older than X DAYS $ct['conf']['power']['access_stats_delete_old'] = 90; // (default = 90, MIN = 15, MAX = 360) // MINUTES to cache real-time exchange price data...can be zero to DISABLE cache, but set to at least 1 minute TO AVOID YOUR IP ADDRESS GETTING BLOCKED // SOME APIS PREFER THIS SET TO AT LEAST A FEW MINUTES, SO IT'S RECOMMENDED TO KEEP FAIRLY HIGH $ct['conf']['power']['last_trade_cache_time'] = 4; // (default = 4, MAX = 60) // MINUTES to cache data, for exchange "search" mode, when adding new asset markets in the admin interface $ct['conf']['power']['exchange_search_cache_time'] = 30; // Default = 30 // MINUTES to cache marketcap rankings...START HIGH and test lower, it can be STRICT // (coingecko #ABSOLUTELY HATES# DATA CENTER IPS [DEDICATED / VPS SERVERS], BUT GOES EASY ON RESIDENTIAL IPS) $ct['conf']['power']['marketcap_cache_time'] = 150; // (default = 150, MIN = 50, MAX = 200) //// // Number of marketcap rankings to request from API. // 500 rankings is a safe maximum to START WITH, to avoid getting your API requests THROTTLED / BLOCKED // (coingecko #ABSOLUTELY HATES# DATA CENTER IPS [DEDICATED / VPS SERVERS], BUT GOES EASY ON RESIDENTIAL IPS) $ct['conf']['power']['marketcap_ranks_max'] = 500; // (default = 500, MIN = 100, MAX = 1000) // Maximum margin leverage available in the user interface ('Update Portfolio' page, etc) $ct['conf']['power']['margin_leverage_maximum'] = 150; // Every X days backup chart / config / etc data. 0 disables backups. Email to / from !MUST BE SET! (a download link is emailed to you of the chart data archive) $ct['conf']['power']['backup_archive_frequency'] = 1; // Days TO WAIT UNTIL DELETING OLD backup archives (chart data archives, etc) $ct['conf']['power']['backup_archive_delete_old'] = 15; // Keep logs X DAYS before purging (fully deletes logs every X days). Start low (especially when using proxies) $ct['conf']['power']['logs_purge'] = 5; // (default = 5) // Highest allowed sensor value to scale vertical axis for, in the FIRST system information chart (out of two) // (higher sensor data is moved into the second chart, to keep ranges easily readable between both charts...only used IF CRON JOB IS SETUP) $ct['conf']['power']['system_stats_first_chart_maximum_scale'] = 3.25; // (default = 3.25) //// // Highest allowed sensor value to scale vertical axis for, in the SECOND system information chart (out of two) // (to prevent anomaly results from scaling vertical axis TOO HIGH to read LESSER-VALUE sensor data...only used IF CRON JOB IS SETUP) $ct['conf']['power']['system_stats_second_chart_maximum_scale'] = 325; // (default = 325) // (Light) time period charts (load just as quickly for any time period, 7 day / 30 day / 365 day / etc) // Structure of light charts #IN DAYS# (X days time period charts) // Interface will auto-detect and display days IN THE INTERFACE as: 365 = 1Y, 180 = 6M, 30 = 1M, 7 = 1W, etc // (JUST MAKE SURE YOU USE 365 / 30 / 7 *MULTIPLIED BY THE NUMBER OF* YEARS / MONTHS / WEEKS FOR PROPER AUTO-DETECTION/CONVERSION) // (LOWER TIME PERIODS [UNDER 180 DAYS] #SHOULD BE KEPT SOMEWHAT MINIMAL#, TO REDUCE RUNTIME LOAD / DISK WRITES DURING CRON JOBS) $ct['conf']['power']['light_chart_day_intervals'] = '14,30,90,180,365,730,1460'; // (default = '14,30,90,180,365,730,1460') //// // The maximum number of data points allowed in each light chart // (saves on disk storage / speeds up chart loading times SIGNIFICANTLY #WITH A NUMBER OF 1000 OR LESS#) $ct['conf']['power']['light_chart_data_points_maximum'] = 875; // (default = 875), ADJUST WITH CARE!!! //// // The space between light chart links inside the chart interface $ct['conf']['power']['light_chart_link_spacing'] = 32; // (default = 32), ADJUST WITH CARE!!! //// // The GUESSED offset (width) for light chart link fonts inside the chart interface (NOT MONOSPACE, SO WE GUESS AN AVERAGE) $ct['conf']['power']['light_chart_link_font_offset'] = 4; // (default = 4), ADJUST WITH CARE!!! //// // Maximum number of light chart NEW BUILDS allowed during background tasks, PER CPU CORE (only reset / new, NOT the 'all' chart REbuilds) // (THIS IS MULTIPLIED BY THE NUMBER OF CPU CORES [if detected], avoids overloading low power devices / still builds fast on multi-core) // LOW POWER DEVICES should NEVER exceed 25 new builds per CPU core $ct['conf']['power']['light_chart_first_build_hard_limit'] = 25; // (default = 25), ADJUST WITH CARE!!! //// // Randomly rebuild the 'ALL' light chart between the minimum and maximum HOURS set here (so they don't refresh all at once, for faster runtimes) // LARGER AVERAGE TIME SPREAD IS EASIER ON LOW POWER DEVICES (TO ONLY UPDATE A FEW AT A TIME), FOR A MORE CONSISTENT CRON JOB RUNTIME SPEED!! $ct['conf']['power']['light_chart_all_rebuild_min_max'] = '4,8'; // 'min,max' (default = '4,8'), ADJUST WITH CARE!!! // Configuration for system resource warning thresholds (logs to error log, and sends comms alerts to any activated comms) // (WHEN THE SYSTEM RESOURCES REACH THESE VALUES [and it's been hours_between_alerts since last alert], // THE WARNINGS ARE TRIGGERED TO BE LOGGED / SENT TO ADMIN COMMS) // !!LEAVE YOURSELF SOME #EXTRA ROOM# ON THESE VALUES, TO BE ALERTED #BEFORE# YOUR SYSTEM WOULD RISK CRASHING!! //// // If SYSTEM UPTIME has only been up X DAYS (or less), trigger warning $ct['conf']['power']['system_uptime_warning'] = '0||36'; // 'days_uptime||hours_between_alerts' (default = '0||36') //// // SYSTEM LOAD warning default is 2x number of cores your app server has (1 core system = load level 2.00 would trigger an alert) // SYSTEM LOAD THRESHOLD MULTIPLIER allows you to adjust when warning is triggered (0.5 is half default, 2.00 is 2x default, etc) $ct['conf']['power']['system_load_warning'] = '1.00||4'; // 'threshold_multiplier||hours_between_alerts' (default = '1.00||4') //// // If system TEMPERATURE is X degrees celcius (or more), trigger warning $ct['conf']['power']['system_temperature_warning'] = '70||2'; // 'temp_celcius||hours_between_alerts' (default = '70||2') //// // If USED MEMORY PERCENTAGE is X (or more), trigger warning $ct['conf']['power']['memory_used_percent_warning'] = '85||4'; // 'memory_used_percent||hours_between_alerts' (default = '85||4') //// // If FREE STORAGE space is X MEGABYTES (or less), trigger warning $ct['conf']['power']['free_partition_space_warning'] = '1000||24'; // 'free_space_megabytes||hours_between_alerts' (default = '1000||24') //// // If PORTFOLIO CACHE SIZE is X MEGABYTES (or more), trigger warning $ct['conf']['power']['portfolio_cache_warning'] = '2500||72'; // 'portfolio_cache_megabytes||hours_between_alerts' (default = '2500||72') //// // If ALL COOKIES TOTAL DATA SIZE is X BYTES (or more), trigger warning // Because the header data MAY be approaching the server limit (WHICH CAN CRASH THIS APP!!) // STANDARD SERVER HEADER SIZE LIMITS (IN BYTES)...Apache: 8000, NGINX: 4000 - 8000, IIS: 8000 - 16000, Tomcat: 8000 - 48000 $ct['conf']['power']['cookies_size_warning'] = '4500||6'; // 'cookies_size_bytes||hours_between_alerts' (default = '4500||6') //////////////////////////////////////// // !END! POWER USER CONFIGURATION //////////////////////////////////////// //////////////////////////////////////// // !START! NEWS FEEDS CONFIGURATION //////////////////////////////////////// // NEWS FEED SETTINGS (ATOM / RSS formats supported) // RSS feed entries to show (per-feed) on News page (without needing to click the "show more / less" link) $ct['conf']['news']['entries_to_show'] = 10; // (default = 10) // RSS feed entries under X DAYS old are marked as 'new' on the news page $ct['conf']['news']['mark_as_new'] = 3; // (default = 3) // Every X days email a list of #NEW# RSS feed posts. // 0 to disable. Email to / from !MUST BE SET IN COMMS CHANNELS SETUP! $ct['conf']['news']['news_feed_email_frequency'] = 3; // (default = 3) // MAXIMUM #NEW# RSS feed entries to include (per-feed) in news feed EMAIL (that are less then 'news_feed_email_frequency' days old) $ct['conf']['news']['news_feed_email_entries_include'] = 15; // (default = 15) // Minutes to cache RSS feeds for News page // Randomly cache each RSS feed between the minimum and maximum MINUTES set here (so they don't refresh all at once, for faster runtimes) // THE WIDER THE GAP BETWEEN THE NUMBERS, MORE SPLIT UP / FASTER THE FEEDS WILL LOAD IN THE INTERFACE #CONSISTENTLY# $ct['conf']['news']['news_feed_cache_min_max'] = '100,200'; // 'min,max' (default = '100,200'), ADJUST WITH CARE!!! // Maximum number of BATCHED news feed fetches / re-caches per ajax OR cron runtime // (#TO HELP PREVENT RUNTIME CRASHES# ON LOW POWER DEVICES OR HIGH TRAFFIC INSTALLS, USE A LOW NUMBER OF 20 OR LESS) $ct['conf']['news']['news_feed_batched_maximum'] = 15; // (default = 15), ADJUST WITH CARE!!! // Maximum number of news feeds allowed to be pre-cached during background tasks (to avoid overloading low power devices) $ct['conf']['news']['news_feed_precache_maximum'] = 50; // (default = 50), ADJUST WITH CARE!!! // RSS feed services that are a bit funky with allowed user agents, so we need to let them know this is a real feed parser (not just a spammy bot) // (user agent string is EXPLICITLY SET AS A CUSTOM FEED PARSER) $ct['conf']['news']['strict_news_feed_servers'] = array( 'cointelegraph.com', 'medium.com', 'reddit.com', 'simplecast.com', ); // RSS news feeds available on the News page $ct['conf']['news']['feeds'] = array( ///////////////////////////////////////////////////// // STANDARD RSS #AND# ATOM FORMAT ARE SUPPORTED ///////////////////////////////////////////////////// array( "title" => "Blog - BitcoinCore.org", "url" => "https://bitcoincore.org/en/rss.xml" ), array( "title" => "Blog - Bitmex", "url" => "https://blog.bitmex.com/feed/?lang=en_us" ), array( "title" => "Blog - Colosseum (Solana Hackathons / Accelerators / etc)", "url" => "https://blog.colosseum.org/rss/" ), array( "title" => "Blog - Kraken", "url" => "https://blog.kraken.com/feed/" ), array( "title" => "Blog - Meteora Aggregator (DeFi LP interfacing)", "url" => "https://meteoraag.medium.com/feed" ), array( "title" => "Blog - Star Atlas (NFT-based Space Shooter Metaverse on Solana)", "url" => "https://medium.com/feed/star-atlas" ), array( "title" => "News - Bitcoin Magazine", "url" => "https://bitcoinmagazine.com/feed" ), array( "title" => "News - CoinTelegraph", "url" => "https://cointelegraph.com/feed" ), array( "title" => "News - Decrypt", "url" => "https://decrypt.co/feed" ), array( "title" => "News - Fedora (SECURE operating system [for crypto wallets])", "url" => "https://fedoramagazine.org/feed/" ), array( "title" => "News - Slashdot", "url" => "https://rss.slashdot.org/Slashdot/slashdot" ), array( "title" => "Newsletter - Alpha Please", "url" => "https://alphapls.substack.com/feed" ), array( "title" => "Newsletter - Bitcoin Optech", "url" => "https://bitcoinops.org/feed.xml" ), array( "title" => "Newsletter - CoinCenter (D.C. non-profit crypto lobbying)", "url" => "https://www.newsletter.coincenter.org/feed" ), array( "title" => "Newsletter - Crypto In America", "url" => "https://www.cryptoinamerica.com/feed" ), array( "title" => "Newsletter - Helius Labs (Solana API infra)", "url" => "https://helius.substack.com/feed" ), array( "title" => "Newsletter - Our Network", "url" => "https://ournetwork.substack.com/feed" ), array( "title" => "Newsletter - The Daily Degen", "url" => "https://thedailydegen.substack.com/feed" ), array( "title" => "Newsletter - The Solana Six", "url" => "https://solanafloor.substack.com/feed" ), array( "title" => "Newsletter - Step Data Insights (for Solana)", "url" => "https://stepdata.substack.com/feed" ), array( "title" => "Podcast - Citadel Dispatch", "url" => "https://anchor.fm/s/45563e80/podcast/rss" ), array( "title" => "Podcast - Tales From The Crypt", "url" => "https://anchor.fm/s/558f520/podcast/rss" ), array( "title" => "Podcast - The Solana Podcast", "url" => "https://feeds.simplecast.com/W1NI2v3Z" ), array( "title" => "Podcast - Unchained", "url" => "https://unchained.libsyn.com/unchained" ), array( "title" => "Reddit - Bitcoin (hot)", "url" => "https://www.reddit.com/r/Bitcoin/hot/.rss?format=xml" ), array( "title" => "Reddit - NEAR Protocol (hot)", "url" => "https://www.reddit.com/r/nearprotocol/hot/.rss?format=xml" ), array( "title" => "Reddit - Solana (hot)", "url" => "https://www.reddit.com/r/solana/hot/.rss?format=xml" ), array( "title" => "Reddit - StarAtlas (hot)", "url" => "https://www.reddit.com/r/staratlas/hot/.rss?format=xml" ), array( "title" => "StackExchange - Bitcoin (hot)", "url" => "https://bitcoin.stackexchange.com/feeds/hot" ), array( "title" => "StackOverflow - NEAR Protocol (hot)", "url" => "https://stackoverflow.com/feeds/tag?tagnames=nearprotocol&sort=hot" ), array( "title" => "StackExchange - Solana (hot)", "url" => "https://solana.stackexchange.com/feeds/hot" ), array( "title" => "Stocks - CNBC: US Top News and Analysis", "url" => "https://search.cnbc.com/rs/search/combinedcms/view.xml?partnerId=wrss01&id=100003114" ), array( "title" => "Stocks - AlphaStreet", "url" => "https://news.alphastreet.com/feed/" ), array( "title" => "Stocks - Grit Capital", "url" => "https://rss.beehiiv.com/feeds/qyHKIYCF6I.xml" ), array( "title" => "Stocks - Investing.com: News", "url" => "https://www.investing.com/rss/news.rss" ), array( "title" => "Stocks - Sunday Morning Markets", "url" => "https://sundaymorningmarkets.substack.com/feed" ), array( "title" => "Youtube - Accelerate with Mert", "url" => "https://www.youtube.com/feeds/videos.xml?channel_id=UCqh3mCIhY5gCI0uwuNQbm8g" ), array( "title" => "Youtube - BTC Sessions", "url" => "https://www.youtube.com/feeds/videos.xml?channel_id=UChzLnWVsl3puKQwc5PoO6Zg" ), array( "title" => "Youtube - Kripto Sözlük (turkish)", "url" => "https://www.youtube.com/feeds/videos.xml?channel_id=UC5rV0QEGbv0Y-umDwshs_HA" ), array( "title" => "Youtube - Lightspeed (Solana / Alt L1 podcast)", "url" => "https://www.youtube.com/feeds/videos.xml?channel_id=UCjsgQKPpR7ubPQhPqjf8kyA" ), array( "title" => "Youtube - NEAR Protocol (decentralized / high-speed L1, for AI)", "url" => "https://www.youtube.com/feeds/videos.xml?channel_id=UCuKdIYVN8iE3fv8alyk1aMw" ), array( "title" => "Youtube - Solana Labs", "url" => "https://www.youtube.com/feeds/videos.xml?channel_id=UC9AdQPUe4BdVJ8M9X7wxHUA" ), array( "title" => "Youtube - What Bitcoin Did", "url" => "https://www.youtube.com/feeds/videos.xml?channel_id=UCtvg5cXLY_tHDJeBoRySBtg" ), ); //////////////////////////////////////// // !END! NEWS FEEDS CONFIGURATION //////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////// PRIMARY CONFIGURATIONS -END- ////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////// EMAIL-TO-MOBILE-TEXT CONFIGURATION -START- //////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// /* Below are the mobile networks supported by Open Crypto Tracker's email-to-mobile-text functionality. Using your corresponding "Network Name Key" (case-sensitive) listed below, add that EXACT name in this config file further above within the $ct['conf']['comms']['to_mobile_text'] setting as the text network name variable, to enable email-to-text alerts to your network's mobile phone number. PLEASE REPORT ANY MISSING / INCORRECT / NON-FUNCTIONAL GATEWAYS HERE, AND I WILL FIX THEM: https://github.com/taoteh1221/Open_Crypto_Tracker/issues (or you can add / update it yourself right in this configuration, if you know the correct gateway domain name) */ // All supported mobile network email-to-text gateway (domain name) configurations // Network name keys MUST BE LOWERCASE (for reliability / consistency, // as these name keys are always called from (forced) lowercase name key lookups) // DUPLICATE NETWORK NAME KEYS --WILL CANCEL EACH OTHER OUT--, !!USE A UNIQUE NAME FOR EACH KEY!! // WHEN ADDING YOUR OWN GATEWAYS, ONLY INCLUDE THE DOMAIN (THIS APP WILL AUTOMATICALLY FORMAT TO your_phone_number@your_gateway) $ct['conf']['mobile_network']['text_gateways'] = array( // [EXAMPLE] // 'network_name_key||network_gateway1.com', // 'unique_network_name_key||network_gateway2.com', // [INTERNATIONAL] 'esendex||echoemail.net', 'global_star||msg.globalstarusa.com', // [MISCELLANEOUS COUNTRIES] 'movistar_ar||sms.movistar.net.ar', // Argentina 'mobiltel||sms.mtel.net', // Bulgaria 'china_mobile||139.com', // China 'ice||sms.ice.cr', // Costa Rica 'tmobile_hr||sms.t-mobile.hr', // Croatia 'tellus_talk||esms.nu', // Europe 'csl||mgw.mmsc1.hkcsl.com', // Hong Kong 'tele2_lv||sms.tele2.lv', // Latvia 'emtel||emtelworld.net', // Mauritius 'telcel||itelcel.com', // Mexico 'tmobile_nl||gin.nl', // Netherlands 'mas_movil||cwmovil.com', // Panama 'claro_pr||vtexto.com', // Puerto Rico 'beeline||sms.beemail.ru', // Russia 'm1||m1.com.sg', // Singapore 'mobitel||sms.mobitel.lk', // Sri Lanka 'tele2_se||sms.tele2.se', // Sweden 'sunrise_ch||gsm.sunrise.ch', // Switzerland 'movistar_uy||sms.movistar.com.uy', // Uruguay // [AUSTRALIA] 'sms_broadcast||send.smsbroadcast.com.au', 'sms_central||sms.smscentral.com.au', 'sms_pup||smspup.com', 'tmobile_au||optusmobile.com.au', 'ut_box||sms.utbox.net', // [AUSTRIA] 'firmen_sms||subdomain.firmensms.at', 'tmobile_at||sms.t-mobile.at', // [CANADA] 'bell||txt.bell.ca', 'koodo||msg.telus.com', 'pc_telecom_ca||mobiletxt.ca', 'rogers_ca||pcs.rogers.com', 'sasktel||pcs.sasktelmobility.com', 'telus_ca||mms.telusmobility.com', 'virgin_ca||vmobile.ca', 'wind||txt.windmobile.ca', // [COLUMBIA] 'claro_co||iclaro.com.co', 'movistar_co||movistar.com.co', // [FRANCE] 'bouygues||mms.bouyguestelecom.fr', 'orange_fr||orange.fr', 'sfr||sfr.fr', // [GERMANY] 'o2||o2online.de', 'tmobile_de||t-mobile-sms.de', 'vodafone_de||vodafone-sms.de', // [ICELAND] 'vodafone_is||sms.is', // [INDIA] 'aircel||aircel.co.in', 'airtel||airtelmail.com', // [NEW ZEALAND] 'telecom_nz||etxt.co.nz', 'vodafone_nz||mtxt.co.nz', // [NORWAY] 'sendega||sendega.com', 'teletopia||sms.teletopiasms.no', // [POLAND] 'orange_pl||orange.pl', 'plus||text.plusgsm.pl', 'polkomtel||text.plusgsm.pl', // [SOUTH AFRICA] 'mtn||sms.co.za', // [SPAIN] 'esendex_es||esendex.net', 'movistar_es||movistar.net', 'vodafone_es||vodafone.es', // [UNITED KINGDOM] 'media_burst||sms.mediaburst.co.uk', 'txt_local||txtlocal.co.uk', 'virgin_uk||vxtras.com', 'vodafone_uk||vodafone.net', // [UNITED STATES] 'bluegrass||mms.myblueworks.com', 'cellcom||cellcom.quiktxt.com', 'chariton_valley||sms.cvalley.net', 'cricket||mms.cricketwireless.net', 'cspire||cspire1.com', 'gci||mobile.gci.net', 'googlefi||msg.fi.google.com', 'nextech||sms.ntwls.net', 'pioneer||zsend.com', 'rogers_us||pcs.rogers.com', 'simple_mobile||smtext.com', 'southern_linc||page.southernlinc.com', 'south_central_comm||rinasms.com', 'tmobile_us||tmomail.net', 'telus_us||mms.telusmobility.com', 'tracfone||mmst5.tracfone.com', 'union||union-tel.com', 'us_cellular||email.uscc.net', 'verizon||vtext.com', 'viaero||mmsviaero.com', 'virgin_us||vmobl.com', 'xit||sms.xit.net', ); // mobile_network_text_gateways END /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////// EMAIL-TO-MOBILE-TEXT CONFIGURATION -END- ////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////// PORTFOLIO ASSETS CONFIGURATION -START- //////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// // BELOW IS AN EXAMPLE SET OF CONFIGURED ASSETS. PLEASE NOTE THIS IS PROVIDED TO ASSIST YOU IN ADDING YOUR PARTICULAR FAVORITE ASSETS TO THE DEFAULT LIST, // AND !---IN NO WAY---! INDICATES ENDORSEMENT OR RECOMMENDATION OF !---ANY---! OF THE *DEMO* ASSETS! // SEE README.txt FOR HOW TO ADD / EDIT / DELETE COINS IN THIS CONFIG // SEE /DOCUMENTATION-ETC/CONFIG-EXAMPLE.txt FOR A FULL EXAMPLE OF THE DEFAULT CONFIGURATION (ESPECIALLY IF YOU MESS UP config.php, lol) // See TROUBLESHOOTING.txt for tips / troubleshooting FAQs. // TYPOS LIKE MISSED COMMAS / MISSED QUOTES / ETC !!!!WILL BREAK THE APP!!!!, BE CAREFUL EDITING THIS CONFIG FILE! $ct['conf']['assets'] = array( //////////////////////////////////////////////////////////////////// // BTC // (!!!!DO NOT DELETE, BTC IS *REQUIRED* TO RUN THIS APP!!!!) 'BTC' => array( 'name' => 'Bitcoin', 'mcap_slug' => 'bitcoin', 'pair' => array( 'aed' => array( 'coingecko_aed' => 'bitcoin', ), 'ars' => array( 'coingecko_ars' => 'bitcoin', ), 'aud' => array( 'kraken' => 'XBTAUD', 'btcmarkets' => 'BTC/AUD', 'coinspot' => 'btc', ), 'bdt' => array( 'coingecko_bdt' => 'bitcoin', ), 'brl' => array( 'binance' => 'BTCBRL', ), 'cad' => array( 'kraken' => 'XXBTZCAD', ), 'chf' => array( 'kraken' => 'XBTCHF', ), 'clp' => array( 'coingecko_clp' => 'bitcoin', ), 'czk' => array( 'coingecko_czk' => 'bitcoin', ), 'dkk' => array( 'coingecko_dkk' => 'bitcoin', ), 'eth' => array( 'loopring_amm' => 'AMM-WBTC-ETH', ), 'eur' => array( 'coinbase' => 'BTC-EUR', 'binance' => 'BTCEUR', 'kraken' => 'XXBTZEUR', 'bitstamp' => 'btceur', 'bitflyer' => 'BTC_EUR', 'cex' => 'BTC:EUR', 'luno' => 'XBTEUR', ), 'gel' => array( 'coingecko_gel' => 'bitcoin', ), 'gbp' => array( 'coinbase' => 'BTC-GBP', 'kraken' => 'XXBTZGBP', 'bitfinex' => 'tBTCGBP', 'cex' => 'BTC:GBP', ), 'hkd' => array( 'coingecko_hkd' => 'bitcoin', ), 'huf' => array( 'coingecko_huf' => 'bitcoin', ), 'idr' => array( 'coingecko_idr' => 'bitcoin', ), 'inr' => array( 'coingecko_inr' => 'bitcoin', 'bitbns' => 'BTC', 'buyucoin' => 'INR-BTC', 'wazirx' => 'btcinr', 'coindcx' => 'BTCINR', 'unocoin' => 'BTC', ), 'jpy' => array( 'kraken' => 'XXBTZJPY', 'bitflyer' => 'BTC_JPY', ), 'krw' => array( 'upbit' => 'KRW-BTC', 'korbit' => 'btc_krw', ), 'kwd' => array( 'coingecko_kwd' => 'bitcoin', ), 'lkr' => array( 'coingecko_lkr' => 'bitcoin', ), 'mxn' => array( 'bitso' => 'btc_mxn', ), 'myr' => array( 'coingecko_myr' => 'bitcoin', ), 'ngn' => array( 'coingecko_ngn' => 'bitcoin', ), 'nis' => array( 'coingecko_nis' => 'bitcoin', 'bit2c' => 'BtcNis', ), 'nok' => array( 'coingecko_nok' => 'bitcoin', ), 'nzd' => array( 'coingecko_nzd' => 'bitcoin', ), 'php' => array( 'coingecko_php' => 'bitcoin', ), 'pkr' => array( 'coingecko_pkr' => 'bitcoin', ), 'pln' => array( 'coingecko_pln' => 'bitcoin', ), 'rmb' => array( 'coingecko_rmb' => 'bitcoin', ), 'rub' => array( 'coingecko_rub' => 'bitcoin', ), 'sar' => array( 'coingecko_sar' => 'bitcoin', ), 'sek' => array( 'coingecko_sek' => 'bitcoin', ), 'sgd' => array( 'coingecko_sgd' => 'bitcoin', ), 'sol' => array( 'jupiter_ag' => '3NZ9JMVBmGAqocybic2c7LQCJScmgsAZ6vQqTDzcqmJh/So11111111111111111111111111111111111111112', ), 'thb' => array( 'coingecko_thb' => 'bitcoin', ), 'try' => array( 'btcturk' => 'BTCTRY', 'binance' => 'BTCTRY', ), 'twd' => array( 'coingecko_twd' => 'bitcoin', ), 'uah' => array( 'coingecko_uah' => 'bitcoin', ), 'usd' => array( 'coingecko_usd' => 'bitcoin', 'coinbase' => 'BTC-USD', 'bitstamp' => 'btcusd', 'kraken' => 'XXBTZUSD', 'gemini' => 'btcusd', 'bitmex' => 'XBTUSD', 'bitmex_u20' => 'XBTU20', 'bitmex_z20' => 'XBTZ20', 'bitfinex' => 'tBTCUSD', 'bitflyer' => 'BTC_USD', 'hitbtc' => 'BTCUSD', 'okcoin' => 'BTC-USD', 'cex' => 'BTC:USD', ), 'usdc' => array( 'kraken' => 'XBTUSDC', 'binance_us' => 'BTCUSDC', ), 'usdt' => array( 'binance' => 'BTCUSDT', 'kraken' => 'XBTUSDT', 'btcturk' => 'BTCUSDT', 'huobi' => 'btcusdt', 'okex' => 'BTC-USDT', 'bitbns' => 'BTCUSDT', 'wazirx' => 'btcusdt', ), 'vnd' => array( 'coingecko_vnd' => 'bitcoin', ), 'zar' => array( 'luno' => 'XBTZAR', 'binance' => 'BTCZAR', ), ) // pair END ), // Asset END (!!!!*BTC MUST BE THE VERY FIRST* IN THIS ASSET LIST, DO NOT DELETE, BTC IS *REQUIRED* TO RUN THIS APP!!!!) //////////////////////////////////////////////////////////////////// // ZBTC 'ZBTC' => array( 'name' => 'Zeus Network zBTC', 'mcap_slug' => 'zeus-netwok-zbtc', 'pair' => array( 'btc' => array( 'coingecko_btc' => 'zeus-netwok-zbtc', ), 'eur' => array( 'coingecko_eur' => 'zeus-netwok-zbtc', ), "sol" => array( 'jupiter_ag' => 'zBTCug3er3tLyffELcvDNrKkCymbPWysGcWihESYfLg/So11111111111111111111111111111111111111112', ), 'usd' => array( 'coingecko_usd' => 'zeus-netwok-zbtc', 'coingecko_terminal' => 'solana||ek5qUSH3qws3FjLVko1kqkKopFw6SUNtr5jijrcR9pi', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // FBTCSTOCK 'FBTCSTOCK' => array( 'name' => 'Fidelity Bitcoin ETF', 'mcap_slug' => 'FBTC:BATS', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'FBTC', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // ETH // (!!!!DO NOT DELETE, ETH IS *REQUIRED* TO RUN THIS APP!!!!) 'ETH' => array( 'name' => 'Ethereum', 'mcap_slug' => 'ethereum', 'pair' => array( 'aud' => array( 'kraken' => 'ETHAUD', 'btcmarkets' => 'ETH/AUD', 'coinspot' => 'eth', ), 'brl' => array( 'binance' => 'ETHBRL', ), 'btc' => array( 'binance' => 'ETHBTC', 'coinbase' => 'ETH-BTC', 'binance_us' => 'ETHBTC', 'bitstamp' => 'ethbtc', 'gemini' => 'ethbtc', 'kraken' => 'XETHXXBT', 'bitfinex' => 'tETHBTC', 'bitmex_u20' => 'ETHU20', 'jupiter_ag' => '7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs/3NZ9JMVBmGAqocybic2c7LQCJScmgsAZ6vQqTDzcqmJh', 'hitbtc' => 'ETHBTC', 'upbit' => 'BTC-ETH', 'bitflyer' => 'ETH_BTC', 'kucoin' => 'ETH-BTC', 'okex' => 'ETH-BTC', 'poloniex' => 'ETH_BTC', 'bitso' => 'eth_btc', 'luno' => 'ETHXBT', 'wazirx' => 'ethbtc', ), 'cad' => array( 'kraken' => 'XETHZCAD', ), 'chf' => array( 'kraken' => 'ETHCHF', ), 'eur' => array( 'coinbase' => 'ETH-EUR', 'binance' => 'ETHEUR', 'kraken' => 'XETHZEUR', 'bitstamp' => 'etheur', 'cex' => 'ETH:EUR', ), 'gbp' => array( 'coinbase' => 'ETH-GBP', 'kraken' => 'XETHZGBP', 'cex' => 'BTC:GBP', ), 'hkd' => array( 'coingecko_hkd' => 'ethereum', ), 'inr' => array( 'bitbns' => 'ETH', 'buyucoin' => 'INR-ETH', 'wazirx' => 'ethinr', ), 'jpy' => array( 'kraken' => 'XETHZJPY', 'bitflyer' => 'ETH_JPY', ), 'krw' => array( 'upbit' => 'KRW-ETH', 'korbit' => 'eth_krw', ), 'mxn' => array( 'bitso' => 'eth_mxn', ), 'nis' => array( 'bit2c' => 'EthNis', ), 'rub' => array( 'coingecko_rub' => 'ethereum', ), 'sgd' => array( 'coingecko_sgd' => 'ethereum', ), 'sol' => array( 'jupiter_ag' => '7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs/So11111111111111111111111111111111111111112', ), 'try' => array( 'btcturk' => 'ETHTRY', 'binance' => 'ETHTRY', ), 'uah' => array( 'coingecko_uah' => 'ethereum', ), 'usd' => array( 'coingecko_usd' => 'ethereum', 'coinbase' => 'ETH-USD', 'kraken' => 'XETHZUSD', 'bitstamp' => 'ethusd', 'gemini' => 'ethusd', 'bitfinex' => 'tETHUSD', 'bitmex' => 'ETHUSD', 'bitmex_u20' => 'ETHUSDU20', 'okcoin' => 'ETH-USD', 'cex' => 'ETH:USD', 'kuma' => 'ETH-USD', 'presale_usd_value' => 'eth', ), 'usdt' => array( 'binance' => 'ETHUSDT', 'kraken' => 'ETHUSDT', 'btcturk' => 'ETHUSDT', 'huobi' => 'ethusdt', 'binance_us' => 'ETHUSDT', 'hitbtc' => 'ETHUSD', 'upbit' => 'USDT-ETH', 'kucoin' => 'ETH-USDT', 'okex' => 'ETH-USDT', 'loopring_amm' => 'AMM-ETH-USDT', 'poloniex' => 'ETH_USDT', 'bitbns' => 'ETHUSDT', 'wazirx' => 'ethusdt', ), 'usdc' => array( 'kraken' => 'ETHUSDC', 'binance_us' => 'ETHUSDC', 'kucoin' => 'ETH-USDC', 'loopring_amm' => 'AMM-ETH-USDC', 'poloniex' => 'ETH_USDC', ), 'zar' => array( 'luno' => 'ETHZAR', 'binance' => 'BTCZAR', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // SOL // (!!!!DO NOT DELETE, SOL IS *REQUIRED* TO RUN THIS APP!!!!) 'SOL' => array( 'name' => 'Solana', 'mcap_slug' => 'solana', 'pair' => array( 'brl' => array( 'binance' => 'SOLBRL', ), 'btc' => array( 'coinbase' => 'SOL-BTC', 'binance' => 'SOLBTC', 'kraken' => 'SOLXBT', 'huobi' => 'solbtc', 'okex' => 'SOL-BTC', 'crypto.com' => 'SOL_BTC', 'jupiter_ag' => 'So11111111111111111111111111111111111111112/3NZ9JMVBmGAqocybic2c7LQCJScmgsAZ6vQqTDzcqmJh', 'hitbtc' => 'SOLBTC', 'coinex' => 'SOLBTC', ), 'eth' => array( 'okex' => 'SOL-ETH', 'binance' => 'SOLETH', 'jupiter_ag' => 'So11111111111111111111111111111111111111112/7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs', 'hitbtc' => 'SOLETH', ), 'eur' => array( 'coinbase' => 'SOL-EUR', 'binance' => 'SOLEUR', 'binance' => 'SOLEUR', 'kraken' => 'SOLEUR', ), 'gbp' => array( 'kraken' => 'SOLGBP', ), 'try' => array( 'binance' => 'SOLTRY', 'gateio' => 'SOL_TRY', ), 'uah' => array( 'coingecko_uah' => 'solana', ), 'usd' => array( 'coinbase' => 'SOL-USD', 'kraken' => 'SOLUSD', 'bitfinex' => 'tSOLUSD', 'hitbtc' => 'SOLUSD', 'cex' => 'SOL:USD', 'presale_usd_value' => 'sol', ), 'usdc' => array( 'jupiter_ag' => 'So11111111111111111111111111111111111111112/EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v', 'binance_us' => 'SOLUSDC', 'gateio' => 'SOL_USDC', ), 'usdt' => array( 'coinbase' => 'SOL-USDT', 'binance' => 'SOLUSDT', 'okex' => 'SOL-USDT', 'huobi' => 'solusdt', 'binance_us' => 'SOLUSDT', 'crypto.com' => 'SOL_USDT', 'kucoin' => 'SOL-USDT', 'coinex' => 'SOLUSDT', 'gateio' => 'SOL_USDT', 'bitmart' => 'SOL_USDT', 'wazirx' => 'solusdt', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // FSOLSTOCK 'FSOLSTOCK' => array( 'name' => 'Fidelity Solana Fund', 'mcap_slug' => 'FSOL:NYSEARCA', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'FSOL', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // NEAR 'NEAR' => array( 'name' => 'NEAR Protocol', 'mcap_slug' => 'near', 'pair' => array( "aud" => array( "coingecko_aud" => "near", "zebpay" => "NEAR-AUD" ), "brl" => array( "binance" => "NEARBRL", "coingecko_brl" => "near" ), "btc" => array( "binance" => "NEARBTC", "coindcx" => "NEARBTC", "coinex" => "NEARBTC", "coingecko_btc" => "near", "hitbtc" => "NEARBTC", "kucoin" => "NEAR-BTC", "upbit" => "BTC-NEAR" ), "eth" => array( "binance" => "NEARETH", "gateio" => "NEAR_ETH" ), "eur" => array( "binance" => "NEAREUR", "kraken" => "NEAREUR", "zebpay" => "NEAR-EUR" ), "inr" => array( "bitbns" => "NEAR", "coindcx" => "NEARINR", "coingecko_inr" => "near", "wazirx" => "nearinr", "zebpay" => "NEAR-INR" ), "jpy" => array( "binance" => "NEARJPY", "coingecko_jpy" => "near" ), "krw" => array( "korbit" => "near_krw", "upbit" => "KRW-NEAR" ), "rub" => array( "binance" => "NEARRUB", "coingecko_rub" => "near" ), "sol" => array( "coingecko_sol" => "near" ), "try" => array( "binance" => "NEARTRY", "btcturk" => "NEARTRY" ), "usd" => array( "binance_us" => "NEARUSD", "coinbase" => "NEAR-USD", "crypto.com" => "NEAR_USD", "hitbtc" => "NEARUSD", "kraken" => "NEARUSD", "okex" => "NEAR-USD" ), "usdc" => array( "binance" => "NEARUSDC", "coinex" => "NEARUSDC", "gateio" => "NEAR_USDC", "kucoin" => "NEAR-USDC" ), "usdt" => array( "binance" => "NEARUSDT", "binance_us" => "NEARUSDT", "bitmart" => "NEAR_USDT", "btcturk" => "NEARUSDT", "coinbase" => "NEAR-USDT", "coindcx" => "NEARUSDT", "coinex" => "NEARUSDT", "crypto.com" => "NEAR_USDT", "gateio" => "NEAR_USDT", "huobi" => "nearusdt", "kucoin" => "NEAR-USDT", "okex" => "NEAR-USDT", "okex_perps" => "NEAR-USDT-SWAP", "poloniex" => "NEAR_USDT", "wazirx" => "nearusdt" ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // MON 'MON' => array( 'name' => 'Monad', 'mcap_slug' => 'monad', 'pair' => array( "btc" => array( "coingecko_btc" => "monad", "jupiter_ag" => "CrAr4RRJMBVwRsZtT62pEhfA9H5utymC2mVx8e7FreP2/zBTCug3er3tLyffELcvDNrKkCymbPWysGcWihESYfLg", "upbit" => "BTC-MON", ), "eth" => array( "coingecko_eth" => "monad", "jupiter_ag" => "CrAr4RRJMBVwRsZtT62pEhfA9H5utymC2mVx8e7FreP2/7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs", ), "eur" => array( "kraken" => "MONEUR", ), "krw" => array( "upbit" => "KRW-MON", ), "sol" => array( "coingecko_sol" => "monad", "jupiter_ag" => "CrAr4RRJMBVwRsZtT62pEhfA9H5utymC2mVx8e7FreP2/So11111111111111111111111111111111111111112", ), "usd" => array( "coinbase" => "MON-USD", "crypto.com" => "MON_USD", "kraken" => "MONUSD", ), "usdc" => array( "jupiter_ag" => "CrAr4RRJMBVwRsZtT62pEhfA9H5utymC2mVx8e7FreP2/EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", ), 'usdt' => array( "bitmart" => "MON_USDT", "coinex" => "MONUSDT", "gateio" => "MON_USDT", "gateio_usdt_futures" => "MON_USDT", "jupiter_ag" => "CrAr4RRJMBVwRsZtT62pEhfA9H5utymC2mVx8e7FreP2/Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB", "kucoin" => "MON-USDT", "okex_perps" => "MON-USDT-SWAP", ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // USDC 'USDC' => array( 'name' => 'USD Coin', 'mcap_slug' => 'usd-coin', 'pair' => array( 'btc' => array( 'jupiter_ag' => 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v/3NZ9JMVBmGAqocybic2c7LQCJScmgsAZ6vQqTDzcqmJh', ), 'eur' => array( 'kraken' => 'USDCEUR', ), 'gbp' => array( 'kraken' => 'USDCGBP', ), 'sol' => array( 'jupiter_ag' => 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v/So11111111111111111111111111111111111111112', ), 'usd' => array( 'kraken' => 'USDCUSD', ), 'usdt' => array( 'kraken' => 'USDCUSDT', 'huobi' => 'usdcusdt', 'kucoin' => 'USDC-USDT', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // JUP 'JUP' => array( 'name' => 'Jupiter Aggregator', 'mcap_slug' => 'jupiter-exchange-solana', 'pair' => array( 'btc' => array( 'coingecko_btc' => 'jupiter-exchange-solana', 'jupiter_ag' => 'JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN/3NZ9JMVBmGAqocybic2c7LQCJScmgsAZ6vQqTDzcqmJh', ), 'sol' => array( 'jupiter_ag' => 'JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN/So11111111111111111111111111111111111111112', ), 'try' => array( 'binance' => 'JUPTRY', ), 'usd' => array( 'coingecko_terminal' => 'solana||FgTCR1ufcaTZMwZZYhNRhJm2K3HgMA8V8kXtdqyttm19', 'aevo_futures' => 'JUP-PERP', ), 'usdc' => array( 'jupiter_ag' => 'JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN/EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v', ), 'usdt' => array( 'binance' => 'JUPUSDT', 'gateio' => 'JUP_USDT', 'okex' => 'JUP-USDT', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // POLIS 'POLIS' => array( 'name' => 'Star Atlas DAO', 'mcap_slug' => 'star-atlas-dao', 'pair' => array( 'btc' => array( 'coingecko_btc' => 'star-atlas-dao', ), 'eur' => array( 'kraken' => 'POLISEUR', ), "sol" => array( 'jupiter_ag' => 'poLisWXnNRwC6oBu1vHiuKQzFjGL4XDSu4g9qjz9qVk/So11111111111111111111111111111111111111112', ), 'usd' => array( 'kraken' => 'POLISUSD', ), 'usdt' => array( 'gateio' => 'POLIS_USDT', 'coinex' => 'POLISUSDT', 'bitmart' => 'ATLAS_USDT', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // NEON 'NEON' => array( 'name' => 'Neon', 'mcap_slug' => 'neon', 'pair' => array( "sol" => array( 'jupiter_ag' => 'NeonTjSjsuo3rexg9o6vHuMXw62f9V7zvmu8M8Zut44/So11111111111111111111111111111111111111112', ), 'usd' => array( 'coingecko_terminal' => 'solana||GUWM1arUyDnkMGCHvJu3yt1qomJ988utqC3dFN2AUCDT', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // ZEUS 'ZEUS' => array( 'name' => 'ZEUS', 'mcap_slug' => 'zeus-network', 'pair' => array( "sol" => array( 'jupiter_ag' => 'ZEUS1aR7aX8DFFJf5QjWj2ftDDdNTroMNGo8YoQm3Gq/So11111111111111111111111111111111111111112', ), 'usd' => array( 'coingecko_terminal' => 'solana||exmN8ua4Y7qKXUZ2n8JugTNgFWrLGJAUkEBYeTKPNCX', ), 'usdt' => array( 'gateio' => 'ZEUS_USDT', 'okex' => 'ZEUS-USDT', 'kucoin' => 'ZEUS-USDT', 'bitmart' => 'ZEUS_USDT', 'coinex' => 'ZEUSUSDT', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // BONK 'BONK' => array( 'name' => 'Bonk Inu', 'mcap_slug' => 'bonk', 'pair' => array( 'btc' => array( 'coingecko_btc' => 'bonk', ), 'eth' => array( 'coingecko_eth' => 'bonk', ), "sol" => array( 'jupiter_ag' => 'DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263/So11111111111111111111111111111111111111112', ), 'usd' => array( 'coingecko_usd' => 'bonk', ), 'usdt' => array( 'huobi' => 'bonkusdt', 'gateio' => 'BONK_USDT', 'bitmart' => 'BONK_USDT', 'coinex' => 'BONKUSDT', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // POPCAT 'POPCAT' => array( 'name' => 'Popcat', 'mcap_slug' => 'popcat', 'pair' => array( "aud" => array( "coingecko_aud" => "popcat" ), "sol" => array( 'jupiter_ag' => '7GCihgDB8fe6KNjn2MYtkzZcRjQy3t9GHdC8uHYmW2hr/So11111111111111111111111111111111111111112', ), "usd" => array( "coingecko_usd" => "popcat", "crypto.com" => "POPCAT_USD", "kraken" => "POPCATUSD" ), "usdt" => array( "gateio" => "POPCAT_USDT", "huobi" => "popcatusdt", "kucoin" => "POPCAT-USDT" ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // SHOPSTOCK 'SHOPSTOCK' => array( 'name' => 'Shopify Inc', 'mcap_slug' => 'SHOP:TSE', 'pair' => array( 'cad' => array( 'alphavantage_stock' => 'SHOP.TRT', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // IYYSTOCK 'IYYSTOCK' => array( 'name' => 'iShares Dow Jones ETF', 'mcap_slug' => 'IYY:NYSEARCA', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'IYY', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // ONEQSTOCK 'ONEQSTOCK' => array( 'name' => 'Fidelity NASDAQ Index ETF', 'mcap_slug' => 'ONEQ:NASDAQ', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'ONEQ', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // IVVSTOCK 'IVVSTOCK' => array( 'name' => 'iShares S&P 500 ETF', 'mcap_slug' => 'IVV:NYSEARCA', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'IVV', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // COINSTOCK 'COINSTOCK' => array( 'name' => 'Coinbase Global', 'mcap_slug' => 'COIN:NASDAQ', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'COIN', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // AMZNSTOCK 'AMZNSTOCK' => array( 'name' => 'Amazon', 'mcap_slug' => 'AMZN:NASDAQ', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'AMZN', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // NFLXSTOCK 'NFLXSTOCK' => array( 'name' => 'Netflix', 'mcap_slug' => 'NFLX:NASDAQ', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'NFLX', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// // MCDSTOCK 'MCDSTOCK' => array( 'name' => 'McDonalds', 'mcap_slug' => 'MCD:NYSE', 'pair' => array( 'usd' => array( 'alphavantage_stock' => 'MCD', ), ) // pair END ), // Asset END //////////////////////////////////////////////////////////////////// ); // All assets END /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////// PORTFOLIO ASSETS CONFIGURATION -END- ////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// // DON'T LEAVE ANY WHITESPACE AFTER THE CLOSING PHP TAG! ?>