在继续您的订阅之前,我们需要验证您的身份。
这将保护您和其他用户免受潜在欺诈。
- 您将被重定向到我们的安全身份验证合作伙伴Stripe。
- 您需要提供政府颁发的身份证件。
- 该过程是自动的,只需几分钟。
- 完成后,您将被重定向到结账页面继续您的订阅。
通过封装此 MCP 创建技能: https://mcp.zylalabs.com/mcp?apikey=YOUR_ZYLA_API_KEY
基金业绩API为开发者提供详细的投资基金业绩信息,包括历史回报、风险指标和基准比较。通过集成此API,开发者可以创建应用,帮助投资者获取可操作的见解,以评估基金业绩、做出明智的投资决策,并优化他们的投资组合,在不断变化的金融市场中实现长期成功。无论是分析历史回报还是与基准比较基金业绩,用户都能受益于提供的全面数据,从而更有效地驾驭投资环境的复杂性。
传递共同基金符号并接收最新和历史汇率.
投资分析工具:开发者可以利用基金业绩API创建投资分析工具,帮助用户评估投资基金的历史业绩、评估风险指标,并与基准比较基金业绩。
投资组合管理平台:金融科技公司可以将此API集成到投资组合管理平台中,为用户提供有关基金业绩的见解,促进明智的决策和投资组合优化。
金融研究应用:研究公司可以利用此API对投资基金业绩进行深入分析,帮助用户获取全面的数据,以用于研究目的和投资建议。
资产配置策略:财富管理公司可以利用此API根据历史基金业绩数据制定资产配置策略,帮助客户优化他们的投资组合以实现投资目标。
合规解决方案:金融机构可以利用此API确保遵守监管要求,通过访问准确和最新的投资基金业绩信息,促进监管报告和合规监控流程。
除了每个计划的API调用次数,没有其他限制。
GET https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols
支持的符号 - 端点功能
| 对象 | 描述 |
|---|---|
page |
可选 Pagination |
{
"success": true,
"status": 200,
"symbols": [
{
"id": "FMEIX",
"name": "Fidelity Covington Trust - Fidelity Enhanced Mid Cap ETF"
},
{
"id": "STMKX",
"name": "Sierra Tactical Municipal A"
},
{
"id": "STMHX",
"name": "Sierra Tactical Municipal C"
},
{
"id": "SDICX",
"name": "Guggenheim Core Bond Fund C"
},
{
"id": "GIUSX",
"name": "Guggenheim Core Bond Fund Institutional"
},
{
"id": "SIUSX",
"name": "Guggenheim Core Bond Fund A"
},
{
"id": "STMEX",
"name": "Sierra Tactical Municipal Institutional"
},
{
"id": "STMNX",
"name": "Sierra Tactical Municipal Investor"
},
{
"id": "CNFRX",
"name": "Columbia Bond Inst2"
},
{
"id": "CNDCX",
"name": "Columbia Bond C"
},
{
"id": "CNDRX",
"name": "Columbia Bond Adv"
},
{
"id": "STMYX",
"name": "Sierra Tactical Municipal Special"
},
{
"id": "CNDAX",
"name": "Columbia Bond A"
},
{
"id": "CBFRX",
"name": "Columbia Bond R"
},
{
"id": "UMMGX",
"name": "Columbia Bond Inst"
},
{
"id": "CBFYX",
"name": "Columbia Bond Inst3"
},
{
"id": "CADOX",
"name": "Columbia Minnesota Tax-Exempt Inst2"
},
{
"id": "CMNZX",
"name": "Columbia Minnesota Tax-Exempt Inst"
},
{
"id": "PTCOX",
"name": "Performance Trust Total Return Bd C"
},
{
"id": "CLONX",
"name": "Columbia Minnesota Tax-Exempt Adv"
}
],
"pagination": {
"current_page": 1,
"last_page": 90,
"per_page": 20,
"total": 1787,
"next_page_url": "page=2",
"prev_page_url": null
}
}
curl --location --request GET 'https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols' --header 'Authorization: Bearer YOUR_API_KEY'
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
OkHttpClient client = new OkHttpClient();
// Build the GET request
Request request = new Request.Builder()
.url("https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols")
.get() // Use GET method without a body
.addHeader("Authorization", "Bearer YOUR_API_KEY")
.build();
// Execute the request
try (Response response = client.newCall(request).execute()) {
if (response.isSuccessful()) {
// Handle the response in case of a successful request
String responseData = response.body().string();
System.out.println(responseData);
} else {
// Handle errors
System.out.println("Request error: " + response.code());
}
} catch (IOException e) {
// Handle I/O exceptions
e.printStackTrace();
}
}
}
var settings = {
"url": "https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols",
"method": "GET",
"timeout": 0,
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
},
};
$.ajax(settings).done(function (response) {
console.log(response);
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols");
xhr.setRequestHeader("Authorization", "Bearer YOUR_API_KEY");
var axios = require('axios');
var config = {
method: 'GET',
url: 'https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols',
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
},
};
axios(config).then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer YOUR_API_KEY'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols"
headers = {
'Authorization': 'Bearer YOUR_API_KEY'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "net/http"
url = URI("https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::GET.new(url)
request["Authorization"] = "Bearer YOUR_API_KEY"
response = http.request(request)
puts response.read_body
http --follow --timeout 3600 GET 'https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols' \
Authorization:'Bearer YOUR_API_KEY'
var client = new RestClient("https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer YOUR_API_KEY");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols"
method := "GET"
client := &http.Client {
}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Authorization", "Bearer YOUR_API_KEY")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
import Foundation
let url = URL(string: "https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
request.setValue("Bearer YOUR_API_KEY", forHTTPHeaderField: "Authorization")
let task = URLSession.shared.dataTask(with: request) { data, _, error in
if let error = error {
print(error.localizedDescription)
return
}
if let data = data {
print(String(decoding: data, as: UTF8.self))
}
}
task.resume()
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.OkHttpClient
import okhttp3.Request
import okhttp3.RequestBody
import okhttp3.RequestBody.Companion.toRequestBody
fun main() {
val client = OkHttpClient()
var body: RequestBody? = null
val requestBuilder = Request.Builder()
.url("https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols")
.addHeader("Authorization", "Bearer YOUR_API_KEY")
val request = requestBuilder.method("GET", body).build()
client.newCall(request).execute().use { response ->
println(response.body?.string())
}
}
import 'package:http/http.dart' as http;
void main() async {
var payload = '';
final request = http.Request(
"GET",
Uri.parse("https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols"),
);
request.headers['Authorization'] = 'Bearer YOUR_API_KEY';
if (payload.isNotEmpty) {
request.headers['Content-Type'] = 'application/json';
request.body = payload;
}
final client = http.Client();
final response = await client.send(request);
print(await response.stream.bytesToString());
client.close();
}
use reqwest::blocking::Client;
use reqwest::Method;
use std::error::Error;
fn main() -> Result<(), Box> {
let method = Method::from_bytes(b"GET")?;
let client = Client::new();
let mut body = String::new();
let mut request = client
.request(method, "https://zylalabs.com/api/3995/fund+performance+api/4764/supported+symbols")
.header("Authorization", "Bearer YOUR_API_KEY");
let response = request.send()?;
println!("{}", response.text()?);
Ok(())
}
GET https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price
最新价格 - 端点功能
| 对象 | 描述 |
|---|---|
symbol |
[必需] Mutual fund symbol |
{"success":true,"status":200,"symbol":"CMNZX","name":"Columbia Minnesota Tax-Exempt Inst","market":"Nasdaq - Delayed Quote \u2022 USD","price":{"current_close":"19.24","previous_close":"1","change":"0.00","change_%":"(0.00%)","ytdReturn":"0.23%"}}
curl --location --request GET 'https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX' --header 'Authorization: Bearer YOUR_API_KEY'
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
OkHttpClient client = new OkHttpClient();
// Build the GET request
Request request = new Request.Builder()
.url("https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX")
.get() // Use GET method without a body
.addHeader("Authorization", "Bearer YOUR_API_KEY")
.build();
// Execute the request
try (Response response = client.newCall(request).execute()) {
if (response.isSuccessful()) {
// Handle the response in case of a successful request
String responseData = response.body().string();
System.out.println(responseData);
} else {
// Handle errors
System.out.println("Request error: " + response.code());
}
} catch (IOException e) {
// Handle I/O exceptions
e.printStackTrace();
}
}
}
var settings = {
"url": "https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX",
"method": "GET",
"timeout": 0,
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
},
};
$.ajax(settings).done(function (response) {
console.log(response);
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX");
xhr.setRequestHeader("Authorization", "Bearer YOUR_API_KEY");
var axios = require('axios');
var config = {
method: 'GET',
url: 'https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX',
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
},
};
axios(config).then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer YOUR_API_KEY'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX"
headers = {
'Authorization': 'Bearer YOUR_API_KEY'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "net/http"
url = URI("https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::GET.new(url)
request["Authorization"] = "Bearer YOUR_API_KEY"
response = http.request(request)
puts response.read_body
http --follow --timeout 3600 GET 'https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX' \
Authorization:'Bearer YOUR_API_KEY'
var client = new RestClient("https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer YOUR_API_KEY");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX"
method := "GET"
client := &http.Client {
}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Authorization", "Bearer YOUR_API_KEY")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
import Foundation
let url = URL(string: "https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
request.setValue("Bearer YOUR_API_KEY", forHTTPHeaderField: "Authorization")
let task = URLSession.shared.dataTask(with: request) { data, _, error in
if let error = error {
print(error.localizedDescription)
return
}
if let data = data {
print(String(decoding: data, as: UTF8.self))
}
}
task.resume()
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.OkHttpClient
import okhttp3.Request
import okhttp3.RequestBody
import okhttp3.RequestBody.Companion.toRequestBody
fun main() {
val client = OkHttpClient()
var body: RequestBody? = null
val requestBuilder = Request.Builder()
.url("https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX")
.addHeader("Authorization", "Bearer YOUR_API_KEY")
val request = requestBuilder.method("GET", body).build()
client.newCall(request).execute().use { response ->
println(response.body?.string())
}
}
import 'package:http/http.dart' as http;
void main() async {
var payload = '';
final request = http.Request(
"GET",
Uri.parse("https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX"),
);
request.headers['Authorization'] = 'Bearer YOUR_API_KEY';
if (payload.isNotEmpty) {
request.headers['Content-Type'] = 'application/json';
request.body = payload;
}
final client = http.Client();
final response = await client.send(request);
print(await response.stream.bytesToString());
client.close();
}
use reqwest::blocking::Client;
use reqwest::Method;
use std::error::Error;
fn main() -> Result<(), Box> {
let method = Method::from_bytes(b"GET")?;
let client = Client::new();
let mut body = String::new();
let mut request = client
.request(method, "https://zylalabs.com/api/3995/fund+performance+api/4765/latest+price?symbol=CMNZX")
.header("Authorization", "Bearer YOUR_API_KEY");
let response = request.send()?;
println!("{}", response.text()?);
Ok(())
}
该端点将提供时间序列的历史汇率
GET https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates
历史汇率 - 端点功能
| 对象 | 描述 |
|---|---|
symbol |
[必需] Mutual fund symbol |
from |
[必需] Date from YYYY-MM-DD |
to |
[必需] Date to YYYY-MM-DD |
{"success":true,"status":200,"symbol":"PTCOX","name":"Performance Trust Total Return Bd C","market":"Nasdaq - Delayed Quote \u2022 USD","prices":[{"Apr 9, 2024":"19.45"},{"Apr 8, 2024":"19.39"},{"Apr 5, 2024":"19.41"},{"Apr 4, 2024":"19.48"},{"Apr 3, 2024":"19.43"},{"Apr 2, 2024":"19.42"},{"Apr 1, 2024":"19.47"},{"Mar 28, 2024":"19.60"},{"Mar 27, 2024":"19.59"},{"Mar 26, 2024":"19.54"},{"Mar 25, 2024":"19.52"},{"Mar 22, 2024":"19.55"},{"Mar 21, 2024":"19.48"},{"Mar 20, 2024":"19.46"},{"Mar 19, 2024":"19.44"},{"Mar 18, 2024":"19.39"},{"Mar 15, 2024":"0.05 Dividend"},{"Mar 15, 2024":"19.42"},{"Mar 14, 2024":"19.46"},{"Mar 13, 2024":"19.57"},{"Mar 12, 2024":"19.59"},{"Mar 11, 2024":"19.64"},{"Mar 8, 2024":"19.64"},{"Mar 7, 2024":"19.64"},{"Mar 6, 2024":"19.62"},{"Mar 5, 2024":"19.58"}]}
curl --location --request GET 'https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10' --header 'Authorization: Bearer YOUR_API_KEY'
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
OkHttpClient client = new OkHttpClient();
// Build the GET request
Request request = new Request.Builder()
.url("https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10")
.get() // Use GET method without a body
.addHeader("Authorization", "Bearer YOUR_API_KEY")
.build();
// Execute the request
try (Response response = client.newCall(request).execute()) {
if (response.isSuccessful()) {
// Handle the response in case of a successful request
String responseData = response.body().string();
System.out.println(responseData);
} else {
// Handle errors
System.out.println("Request error: " + response.code());
}
} catch (IOException e) {
// Handle I/O exceptions
e.printStackTrace();
}
}
}
var settings = {
"url": "https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10",
"method": "GET",
"timeout": 0,
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
},
};
$.ajax(settings).done(function (response) {
console.log(response);
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10");
xhr.setRequestHeader("Authorization", "Bearer YOUR_API_KEY");
var axios = require('axios');
var config = {
method: 'GET',
url: 'https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10',
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
},
};
axios(config).then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer YOUR_API_KEY'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10"
headers = {
'Authorization': 'Bearer YOUR_API_KEY'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "net/http"
url = URI("https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::GET.new(url)
request["Authorization"] = "Bearer YOUR_API_KEY"
response = http.request(request)
puts response.read_body
http --follow --timeout 3600 GET 'https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10' \
Authorization:'Bearer YOUR_API_KEY'
var client = new RestClient("https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer YOUR_API_KEY");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10"
method := "GET"
client := &http.Client {
}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Authorization", "Bearer YOUR_API_KEY")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
import Foundation
let url = URL(string: "https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
request.setValue("Bearer YOUR_API_KEY", forHTTPHeaderField: "Authorization")
let task = URLSession.shared.dataTask(with: request) { data, _, error in
if let error = error {
print(error.localizedDescription)
return
}
if let data = data {
print(String(decoding: data, as: UTF8.self))
}
}
task.resume()
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.OkHttpClient
import okhttp3.Request
import okhttp3.RequestBody
import okhttp3.RequestBody.Companion.toRequestBody
fun main() {
val client = OkHttpClient()
var body: RequestBody? = null
val requestBuilder = Request.Builder()
.url("https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10")
.addHeader("Authorization", "Bearer YOUR_API_KEY")
val request = requestBuilder.method("GET", body).build()
client.newCall(request).execute().use { response ->
println(response.body?.string())
}
}
import 'package:http/http.dart' as http;
void main() async {
var payload = '';
final request = http.Request(
"GET",
Uri.parse("https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10"),
);
request.headers['Authorization'] = 'Bearer YOUR_API_KEY';
if (payload.isNotEmpty) {
request.headers['Content-Type'] = 'application/json';
request.body = payload;
}
final client = http.Client();
final response = await client.send(request);
print(await response.stream.bytesToString());
client.close();
}
use reqwest::blocking::Client;
use reqwest::Method;
use std::error::Error;
fn main() -> Result<(), Box> {
let method = Method::from_bytes(b"GET")?;
let client = Client::new();
let mut body = String::new();
let mut request = client
.request(method, "https://zylalabs.com/api/3995/fund+performance+api/4766/historical+rates?symbol=PTCOX&from=2024-03-05&to=2024-04-10")
.header("Authorization", "Bearer YOUR_API_KEY");
let response = request.send()?;
println!("{}", response.text()?);
Ok(())
}
| 标头 | 描述 |
|---|---|
授权
|
[必需] 应为 Bearer access_key. 订阅后,请查看上方的"您的 API 访问密钥"。 |
无长期承诺。随时升级、降级或取消。 免费试用包括最多 50 个请求。
基金表现API提供关于共同基金的全面数据,包括但不限于表现指标(例如,收益率,波动率),费用比率,资产配置细分,基金经理详情,历史净资产值(NAV)数据和红利信息
基金表现API中的数据定期更新以确保准确性和相关性 通常更新以实时或每日到每月的间隔发生具体数据集而定
是的,API提供对历史数据的访问,允许用户检索特定时间段内共同基金的过去业绩指标、净值和其他相关信息
是的,API使用可能会有速率限制,以确保所有用户公平访问和最佳性能。具体的速率限制和节流政策可能因API提供商的服务条款而异
是的 API 通常采用认证机制,如 API 密钥或 OAuth 令牌来验证用户并控制对数据的访问 也可以实施授权机制,以根据用户角色和权限限制对某些端点或数据集的访问
“获取支持的符号”端点返回共同基金符号及其对应名称的列表。这使用户能够识别哪些基金可用于进一步分析或数据提取
“获取最新价格”端点通常返回字段,如互惠基金符号、最新价格、价格日期,以及可能的其他指标,如价格变化或百分比变化,提供关于基金当前市场价值的快照
“获取历史汇率”端点的响应数据以时间序列格式组织,通常包括日期、历史汇率和可能的其他指标,如成交量或净值,允许用户分析随时间变化的趋势
“获取最新价格”端点通常接受参数,例如共同基金的符号,以指定请求哪个基金的最新价格。其他参数可能包括日期范围或特定指标,这取决于API的设计
“获取历史汇率”端点提供共同基金的历史表现数据,包括过去的利率、净资产价值,可能还包括在指定时间段内的回报率或波动率等指标,从而实现趋势分析
用户可以利用“获取支持的符号”端点返回的数据选择特定的共同基金进行进一步分析,以确保在向其他端点发出请求时使用有效的符号
基金表现API从信誉良好的金融机构、市场交易所和基金管理公司获取数据,确保信息在投资分析中准确可靠
典型的用例包括构建投资分析工具 开发投资组合管理平台 进行金融研究 和创建资产配置策略 所有这些都旨在增强投资决策能力
Zyla API Hub 就像一个大型 API 商店,您可以在一个地方找到数千个 API。我们还为所有 API 提供专门支持和实时监控。注册后,您可以选择要使用的 API。请记住,每个 API 都需要自己的订阅。但如果您订阅多个 API,您将为所有这些 API 使用相同的密钥,使事情变得更简单。
价格以 USD(美元)、EUR(欧元)、CAD(加元)、AUD(澳元)和 GBP(英镑)列出。我们接受所有主要的借记卡和信用卡。我们的支付系统使用最新的安全技术,由 Stripe 提供支持,Stripe 是世界上最可靠的支付公司之一。如果您在使用卡片付款时遇到任何问题,请通过 [email protected]
此外,如果您已经以这些货币中的任何一种(USD、EUR、CAD、AUD、GBP)拥有有效订阅,该货币将保留用于后续订阅。只要您没有任何有效订阅,您可以随时更改货币。
定价页面上显示的本地货币基于您 IP 地址的国家/地区,仅供参考。实际价格以 USD(美元)为单位。当您付款时,即使您在我们的网站上看到以本地货币显示的等值金额,您的卡片对账单上也会以美元显示费用。这意味着您不能直接使用本地货币付款。
有时,银行可能会因其欺诈保护设置而拒绝收费。我们建议您首先联系您的银行,检查他们是否阻止了我们的收费。此外,您可以访问账单门户并更改关联的卡片以进行付款。如果这些方法不起作用并且您需要进一步帮助,请通过 [email protected]
价格由月度或年度订阅决定,具体取决于所选计划。
API 调用根据成功请求从您的计划中扣除。每个计划都包含您每月可以进行的特定数量的调用。只有成功的调用(由状态 200 响应指示)才会计入您的总数。这确保失败或不完整的请求不会影响您的月度配额。
Zyla API Hub 采用月度订阅系统。您的计费周期将从您购买付费计划的那一天开始,并在下个月的同一日期续订。因此,如果您想避免未来的费用,请提前取消订阅。
要升级您当前的订阅计划,只需转到 API 的定价页面并选择您要升级到的计划。升级将立即生效,让您立即享受新计划的功能。请注意,您之前计划中的任何剩余调用都不会转移到新计划,因此在升级时请注意这一点。您将被收取新计划的全部金额。
要检查您本月剩余多少 API 调用,请参考响应标头中的 "X-Zyla-API-Calls-Monthly-Remaining" 字段。例如,如果您的计划允许每月 1,000 个请求,而您已使用 100 个,则响应标头中的此字段将显示 900 个剩余调用。
要查看您的计划允许的最大 API 请求数,请检查 "X-Zyla-RateLimit-Limit" 响应标头。例如,如果您的计划包括每月 1,000 个请求,此标头将显示 1,000。
"X-Zyla-RateLimit-Reset" 标头显示您的速率限制重置之前的秒数。这告诉您何时您的请求计数将重新开始。例如,如果它显示 3,600,则意味着还有 3,600 秒直到限制重置。
是的,您可以随时通过访问您的账户并在账单页面上选择取消选项来取消您的计划。请注意,升级、降级和取消会立即生效。此外,取消后,您将不再有权访问该服务,即使您的配额中还有剩余调用。
您可以通过我们的聊天渠道联系我们以获得即时帮助。我们始终在线,时间为上午 8 点至下午 5 点(EST)。如果您在该时间之后联系我们,我们将尽快回复您。此外,您可以通过 [email protected]
为了让您有机会在没有任何承诺的情况下体验我们的 API,我们提供 7 天免费试用,允许您免费进行最多 50 次 API 调用。此试用只能使用一次,因此我们建议将其应用于您最感兴趣的 API。虽然我们的大多数 API 都提供免费试用,但有些可能不提供。试用在 7 天后或您进行了 50 次请求后结束,以先发生者为准。如果您在试用期间达到 50 次请求限制,您需要"开始您的付费计划"以继续发出请求。您可以在个人资料中的订阅 -> 选择您订阅的 API -> 定价标签下找到"开始您的付费计划"按钮。或者,如果您在第 7 天之前不取消订阅,您的免费试用将结束,您的计划将自动计费,授予您访问计划中指定的所有 API 调用的权限。请记住这一点以避免不必要的费用。
7 天后,您将被收取试用期间订阅的计划的全额费用。因此,在试用期结束前取消很重要。因忘记及时取消而提出的退款请求不被接受。
当您订阅 API 免费试用时,您可以进行最多 50 次 API 调用。如果您希望超出此限制进行额外的 API 调用,API 将提示您执行"开始您的付费计划"。您可以在个人资料中的订阅 -> 选择您订阅的 API -> 定价标签下找到"开始您的付费计划"按钮。
付款订单在每月 20 日至 30 日之间处理。如果您在 20 日之前提交请求,您的付款将在此时间范围内处理。
服务级别:
100%
响应时间:
568ms
服务级别:
100%
响应时间:
5,450ms
服务级别:
100%
响应时间:
573ms
服务级别:
100%
响应时间:
506ms
服务级别:
100%
响应时间:
798ms
服务级别:
100%
响应时间:
432ms
服务级别:
100%
响应时间:
360ms
服务级别:
100%
响应时间:
1,749ms
服务级别:
100%
响应时间:
578ms
服务级别:
100%
响应时间:
2,349ms
服务级别:
100%
响应时间:
2,163ms
服务级别:
100%
响应时间:
257ms
服务级别:
100%
响应时间:
1,162ms
服务级别:
100%
响应时间:
1,281ms
服务级别:
100%
响应时间:
1,658ms
服务级别:
100%
响应时间:
861ms
服务级别:
100%
响应时间:
2,615ms
服务级别:
100%
响应时间:
1,377ms
服务级别:
100%
响应时间:
364ms
服务级别:
100%
响应时间:
519ms