Description
// ----------------------------------------------------------------------------------------
If you open multiple positions in a hedge strategy.
This indicator show volume exposure each currency to other currency.
// ----------------------------------------------------------------------------------------
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 MijoExposureCurrencyView : Robot
{
private int MAX_PAIRS = 100;
protected override void OnStart()
{
Timer.Start(1);
//Calc_Exposure();
}
protected override void OnTick()
{
//Calc_Exposure();
}
protected override void OnTimer()
{
Calc_Exposure();
}
void Calc_Exposure()
{
string _used = "";
string n = "\n";
int _max_pairs = 0;
int i = 0;
double[] _exposure = new double[MAX_PAIRS];
for (i = 0; i < MAX_PAIRS; i++)
{
_exposure[i] = 0;
}
for (i = (Positions.Count - 1); i >= 0; i--)
{
Symbol symbol = MarketData.GetSymbol(Positions[i].SymbolCode);
string _pair = Positions[i].SymbolCode.Substring(0, 3);
int _pi = _used.IndexOf(_pair, 0, _used.Length);
if (_pi >= 0)
{
_pi /= 3;
}
else
{
_pi = _used.Length / 3;
_used = string.Concat(_used, _pair);
_max_pairs++;
}
if (Positions[i].TradeType == TradeType.Buy)
{
_exposure[_pi] += Positions[i].Volume * symbol.TickSize;
}
else
{
_exposure[_pi] -= Positions[i].Volume * symbol.TickSize;
}
_pair = Positions[i].SymbolCode.Substring(3, 3);
_pi = _used.IndexOf(_pair, 0, _used.Length);
if (_pi >= 0)
{
_pi /= 3;
}
else
{
_pi = _used.Length / 3;
_used = string.Concat(_used, _pair);
_max_pairs++;
}
if (Positions[i].TradeType == TradeType.Sell)
{
_exposure[_pi] += Positions[i].Volume * symbol.TickSize * symbol.Bid;
}
else
{
_exposure[_pi] -= Positions[i].Volume * symbol.TickSize * symbol.Ask;
}
}
ChartObjects.DrawText("Mijo_Exposure", n + "-=Exposure=-", StaticPosition.TopLeft, Colors.Yellow);
for (i = 0; i < _max_pairs; i++)
{
n = n + "\n";
_exposure[i] = _exposure[i] * 1000;
if (_used.Substring(i * 3, 3) == "JPY")
{
_exposure[i] = _exposure[i] * 0.01;
}
if (_exposure[i] > 0)
{
ChartObjects.DrawText("Mijo_Exposure_" + _used.Substring(i * 3, 3), n + " " + _used.Substring(i * 3, 3) + ": " + _exposure[i].ToString("0"), StaticPosition.TopLeft, Colors.Lime);
}
else
{
if (_exposure[i] < 0)
{
ChartObjects.DrawText("Mijo_Exposure_" + _used.Substring(i * 3, 3), n + " " + _used.Substring(i * 3, 3) + ": " + _exposure[i].ToString("0"), StaticPosition.TopLeft, Colors.BlueViolet);
}
else
{
ChartObjects.DrawText("Mijo_Exposure_" + _used.Substring(i * 3, 3), n + " " + _used.Substring(i * 3, 3) + ": " + _exposure[i].ToString("0"), StaticPosition.TopLeft, Colors.Yellow);
}
}
}
}
protected override void OnStop()
{
// Put your deinitialization logic here
}
}
}
mijo212
Joined on 12.10.2013
- Distribution: Free
- Language: C#
- Trading platform: cTrader Automate
- File name: Mijo Exposure Currency View.algo
- Rating: 0
- Installs: 3166
- Modified: 13/10/2021 09:54
Comments
Hello! I just now would like to offer a huge thumbs up for the wonderful info you might have here on this post. I am returning to your website for additional soon.High Top Canvas Shoes
Certain dissertation web sites over the internet courses currently have evidently unveiled while in the web-site.Wockhardt syrup
You have outdone yourself this time. It is probably the best, most short step by step guide that I have ever seen. cash flow loans
Good blog! I truly love how it is simple on my eyes and the data are well written. I’m wondering how I could be notified when a new post has been made. I have subscribed to your feed which must do the trick! Have a great day! link server sensasional
contact lens are not only for fashion but it can also protect your eyes from dust and UV radiation. Sailing in Puerto Plata
Learn how you can find and get a copy of how to get my w2 online for free during the 2022 2023 tax filing season Many companies, including the military, have made their employee s W 2 forms easy to get online.
I must show thanks to this writer just for bailing me out of such a condition. Right after checking throughout the the web and seeing advice that were not helpful, I believed my entire life was done. Existing devoid of the solutions to the difficulties you have fixed through your good post is a critical case, as well as the kind that could have in a wrong way damaged my career if I hadn’t encountered your blog. Your primary talents and kindness in touching all the pieces was very useful. I am not sure what I would have done if I hadn’t come across such a step like this. I’m able to at this time relish my future. Thanks very much for this reliable and results-oriented help. I will not think twice to recommend the blog to anybody who desires guide about this area.slotzeus88
Your blog is one of a kind, i love the way you organize the topics.”:*,, kolkata ff
Get the best deals on Championship Rings for sale Buy champion rings from nba rings for sale, NFL rings and MLB rings at the most affordable price Free shipping worldwide.
A helpful article that describes How To Calculate Percentage.For Explore more Please click here and visit us in our website for more details.
A helpful article that describes How To Calculate Percentage.For Explore more Please click here and visit us in our website for more details.
A helpful article that describes How To Calculate Percentage.For Explore more Please click here and visit us in our website for more details.
I simply noticed your blog site in the past and i also have actually been looking through this task on a daily basis. There’s a great number of tips on this site we adore your look with all the web portal in addition. Support the excellent give good results!Tour guide in Riga
That appears to be excellent however i am still not too sure that I like it. At any rate will look far more into it and decide personally!佐敦補習
One of the more impressive blogs Ive seen. Thanks so much for keeping the internet classy for a change. Youve got style, class, bravado. I mean it. Please keep it up because without the internet is definitely lacking in intelligence.cummins EGR delete kit