70 lines
3.0 KiB
Plaintext
70 lines
3.0 KiB
Plaintext
//+------------------------------------------------------------------+
|
|
//| Demo_CSymbolInfo.mq5 |
|
|
//| Copyright 2012, MetaQuotes Software Corp. |
|
|
//| http://www.mql5.com |
|
|
//+------------------------------------------------------------------+
|
|
#property copyright "Copyright 2012, MetaQuotes Software Corp."
|
|
#property link "http://www.mql5.com"
|
|
#property version "1.00"
|
|
|
|
#include<Trade\SymbolInfo.mqh>
|
|
//+------------------------------------------------------------------+
|
|
//| Expert initialization function |
|
|
//+------------------------------------------------------------------+
|
|
int OnInit()
|
|
{
|
|
//--- object for receiving symbol settings
|
|
CSymbolInfo symbol_info;
|
|
//--- set the name for the appropriate symbol
|
|
symbol_info.Name(_Symbol);
|
|
//--- receive current rates and display
|
|
symbol_info.RefreshRates();
|
|
Print(symbol_info.Name()," (",symbol_info.Description(),")",
|
|
" Bid=",symbol_info.Bid()," Ask=",symbol_info.Ask());
|
|
//--- receive minimum freeze levels for trade operations
|
|
Print("StopsLevel=",symbol_info.StopsLevel()," pips, FreezeLevel=",
|
|
symbol_info.FreezeLevel()," pips");
|
|
//--- receive the number of decimal places and point size
|
|
Print("Digits=",symbol_info.Digits(),
|
|
", Point=",DoubleToString(symbol_info.Point(),symbol_info.Digits()));
|
|
//--- spread data
|
|
Print("SpreadFloat=",symbol_info.SpreadFloat(),", Spread(current)=",
|
|
symbol_info.Spread()," pips");
|
|
//--- request order execution type for limitations
|
|
Print("Limitations for trade operations: ",EnumToString(symbol_info.TradeMode()),
|
|
" (",symbol_info.TradeModeDescription(),")");
|
|
//--- clarifying trades execution mode
|
|
Print("Trades execution mode: ",EnumToString(symbol_info.TradeExecution()),
|
|
" (",symbol_info.TradeExecutionDescription(),")");
|
|
//--- clarifying contracts price calculation method
|
|
Print("Contract price calculation: ",EnumToString(symbol_info.TradeCalcMode()),
|
|
" (",symbol_info.TradeCalcModeDescription(),")");
|
|
//--- contracts' size
|
|
Print("Standard contract size: ",symbol_info.ContractSize(),
|
|
" (",symbol_info.CurrencyBase(),")");
|
|
//--- minimum and maximum volumes in trade operations
|
|
Print("Volume info: LotsMin=",symbol_info.LotsMin()," LotsMax=",symbol_info.LotsMax(),
|
|
" LotsStep=",symbol_info.LotsStep());
|
|
//--- final display
|
|
Print(__FUNCTION__," completed");
|
|
//---
|
|
return(0);
|
|
}
|
|
//+------------------------------------------------------------------+
|
|
//| Expert deinitialization function |
|
|
//+------------------------------------------------------------------+
|
|
void OnDeinit(const int reason)
|
|
{
|
|
//---
|
|
|
|
}
|
|
//+------------------------------------------------------------------+
|
|
//| Expert tick function |
|
|
//+------------------------------------------------------------------+
|
|
void OnTick()
|
|
{
|
|
//---
|
|
|
|
}
|
|
//+------------------------------------------------------------------+
|