 
    
            Price
            
                 24 Jan 2018, 21:12
            
                    
Good evening, how can I for example have the EURUSD chart and through "ChartObjects.DrawText" have the current USDJPY price indication in the chart ?
Thank you
Replies
                     DelFonseca
                     25 Jan 2018, 20:24
                                    
RE:
Panagiotis Charalampous said:
Hi DelTrader,
See an example below
using System; (...)Best Regards,
Panagiotis
HI Panagiotis,
Thank you, thank you so much !! You're awesome !! Cheers
@DelFonseca
                     DelFonseca
                     25 Jan 2018, 23:04
                                    
Helo again,
I have 2 problems now, im trying calculate Bid-Ask to get single result but i cant. And im trying Create if structure but i cant.
The problem with operators '-' and '>', because they cant be apllied in operands of type 'string'.
Can you help me?
The structure:
        protected override void OnTick()
        {
            var Symbol1MarketData = MarketData.GetSymbol(Symbol1);
            var Symbol2MarketData = MarketData.GetSymbol(Symbol2);
            var Symbol3MarketData = MarketData.GetSymbol(Symbol3);
            var Symbol1Low = MarketSeries.Low.LastValue;
            var Symbol2Low = MarketSeries.Low.LastValue;
            var Symbol3Low = MarketSeries.Low.LastValue;
            var Symbol1Bid = Symbol1MarketData.Bid.ToString();
            var Symbol2Bid = Symbol2MarketData.Bid.ToString();
            var Symbol3Bid = Symbol3MarketData.Bid.ToString();
            var Symbol1Ask = Symbol1MarketData.Ask.ToString();
            var Symbol2Ask = Symbol2MarketData.Ask.ToString();
            var Symbol3Ask = Symbol3MarketData.Ask.ToString();
            
            var Symbol1Result = Symbol1Bid - Symbol1Ask;
            var Symbol2Result = Symbol2Bid - Symbol2Ask;
            var Symbol3Result = Symbol3Bid - Symbol3Ask;
            if (Symbol1Result > Symbol2Result > Symbol3Result)
            {
                ExecuteMarketOrder(TradeType.Buy, Symbol, VolumeInUnits);
            }
        }
@DelFonseca
                     PanagiotisCharalampous
                     26 Jan 2018, 10:13
                                    
Hi DelTrader,
See below a correct way to write this function
        protected override void OnTick()
        {
            var Symbol1MarketData = MarketData.GetSymbol("EURUSD");
            var Symbol2MarketData = MarketData.GetSymbol("USDJPY");
            var Symbol3MarketData = MarketData.GetSymbol("EURGBP");
            var Symbol1Low = MarketSeries.Low.LastValue;
            var Symbol2Low = MarketSeries.Low.LastValue;
            var Symbol3Low = MarketSeries.Low.LastValue;
            var Symbol1Bid = Symbol1MarketData.Bid;
            var Symbol2Bid = Symbol2MarketData.Bid;
            var Symbol3Bid = Symbol3MarketData.Bid;
            var Symbol1Ask = Symbol1MarketData.Ask;
            var Symbol2Ask = Symbol2MarketData.Ask;
            var Symbol3Ask = Symbol3MarketData.Ask;
            var Symbol1Result = Symbol1Bid - Symbol1Ask;
            var Symbol2Result = Symbol2Bid - Symbol2Ask;
            var Symbol3Result = Symbol3Bid - Symbol3Ask;
            if (Symbol1Result > Symbol2Result && Symbol2Result > Symbol3Result)
            {
                ExecuteMarketOrder(TradeType.Buy, Symbol, 1000);
            }
        }
Let me know if this helps,
Best Regards,
Panagiotis
@PanagiotisCharalampous
                     DelFonseca
                     26 Jan 2018, 19:58
                                    
RE:
Panagiotis Charalampous said:
Hi DelTrader,
See below a correct way to write this function
protected override void OnTick() { (...) }Let me know if this helps,
Best Regards,
Panagiotis
Perfect!! You'r the guy !! Thank you so much. Im trying creating Triangular Arbitrage Bot. Thank you so much !!!
@DelFonseca

PanagiotisCharalampous
25 Jan 2018, 12:24
Hi DelTrader,
See an example below
using System; using System.Linq; using cAlgo.API; using cAlgo.API.Indicators; using cAlgo.API.Internals; using cAlgo.Indicators; namespace cAlgo { [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)] public class NewcBot : Robot { [Parameter(DefaultValue = 0.0)] public double Parameter { get; set; } protected override void OnStart() { // Put your initialization logic here } protected override void OnTick() { var USDJPY = MarketData.GetSymbol("USDJPY"); var name = "myObject"; var low = MarketSeries.Low.LastValue; var text = USDJPY.Ask.ToString(); var xPos = MarketSeries.Low.Count; var yPos = low; var vAlign = VerticalAlignment.Bottom; var hAlign = HorizontalAlignment.Right; ChartObjects.DrawText(name, text, xPos, yPos, vAlign, hAlign, Colors.Red); } protected override void OnStop() { // Put your deinitialization logic here } } }Best Regards,
Panagiotis
@PanagiotisCharalampous