如何从 .Net ClrWrapper 获取询价和出价
how to get ask and bid from .Net ClrWrapper
我正在使用MetaTrader4.Manager.Wrapper
我想从 MT4 获取所有货币(MT4 中的符号)及其出价和要价。我尝试使用 :
public IList<Symbol> Get()
{
using (var metatrader = new ClrWrapper(new ConnectionParameters
{
Login = serverdata.Login,
Password = serverdata.Password,
Server = serverdata.Server
}, serverdata.path))
{
var Refresh = metatrader.SymbolsRefresh();
IList<Symbol> Live = metatrader.SymbolsGetAll();
return Live;
}
}
从代码中我得到了名称:AUDCAD、AUDCHF、EURCHF 等,但是 BidTickValue 和 AskTickValue return 0.0.
我尝试使用 this answer,但符号 return 为空且出价 return 0。
是否有其他方法获取名称和出价和要价?
Pumping Mode 是什么意思?
先谢谢你
Pumping 是 MT4 模式,当您订阅不同的事件时,MT4 服务器会向您发送更新,而无需手动请求。
例如:行情、交易、用户。
SymbolsGetAll
将 return 您仅在抽水模式下报价,并且它将 return 最近收到的报价。
如果你不打算使用抽水模式,你可以获取最新的引用用户ChartRequest
方法,但是会慢很多。
无需经理直接询价即可获得报价API。
您只需将套接字发送到 MT4 服务器即可。
这是一个例子:
// 1. Start Session.
$ptr=fsockopen('127.0.0.1',443);
// error check
if (!$ptr){
echo "Connection error";
exit;
}
// 2. Send request to MT4
fputs($ptr,"WQUOTES-EURUSD,GBPUSD,USDJPY,\nQUIT\n");
// 3. Reading and processing server responses
while(!feof($ptr))
{
// read line of symbols
$line=fgets($ptr,128);
// the symbol of the end of result transfer
if($line=="end\r\n") break;
// process
print $line;
}
// 4. Session completion
fclose($ptr);
以上将以这种格式打印报价:方向符号买入卖出日期时间。
我正在使用MetaTrader4.Manager.Wrapper
我想从 MT4 获取所有货币(MT4 中的符号)及其出价和要价。我尝试使用 :
public IList<Symbol> Get()
{
using (var metatrader = new ClrWrapper(new ConnectionParameters
{
Login = serverdata.Login,
Password = serverdata.Password,
Server = serverdata.Server
}, serverdata.path))
{
var Refresh = metatrader.SymbolsRefresh();
IList<Symbol> Live = metatrader.SymbolsGetAll();
return Live;
}
}
从代码中我得到了名称:AUDCAD、AUDCHF、EURCHF 等,但是 BidTickValue 和 AskTickValue return 0.0.
我尝试使用 this answer,但符号 return 为空且出价 return 0。
是否有其他方法获取名称和出价和要价? Pumping Mode 是什么意思? 先谢谢你
Pumping 是 MT4 模式,当您订阅不同的事件时,MT4 服务器会向您发送更新,而无需手动请求。
例如:行情、交易、用户。
SymbolsGetAll
将 return 您仅在抽水模式下报价,并且它将 return 最近收到的报价。
如果你不打算使用抽水模式,你可以获取最新的引用用户ChartRequest
方法,但是会慢很多。
无需经理直接询价即可获得报价API。 您只需将套接字发送到 MT4 服务器即可。 这是一个例子:
// 1. Start Session.
$ptr=fsockopen('127.0.0.1',443);
// error check
if (!$ptr){
echo "Connection error";
exit;
}
// 2. Send request to MT4
fputs($ptr,"WQUOTES-EURUSD,GBPUSD,USDJPY,\nQUIT\n");
// 3. Reading and processing server responses
while(!feof($ptr))
{
// read line of symbols
$line=fgets($ptr,128);
// the symbol of the end of result transfer
if($line=="end\r\n") break;
// process
print $line;
}
// 4. Session completion
fclose($ptr);
以上将以这种格式打印报价:方向符号买入卖出日期时间。