ربات EURUSD و GBPUSD

ربات EURUSD و GBPUSD

توضیحات

قبل از هر چیز باید بدانید که این ربات ایجاد شده توسط شرکت مدرن اندیشان نیست و یکی از برترین ربات های ساخته شده در سایت رسمی سی تریدر (ctrader.com) میباشد که توسط تیم منتخب شده و برای شما به صورت انحصاری با تنظیمات خاص در سایت ما ارائه میشود.

بنایراین توضیحات سازنده ربات به شرح ذیل است:

  • این ربات تنها برای جفت ارز های یورو مقابل دلار آمریکا (EURUSD) و پوند انگلستان مقابل دلار آمریکا (GBPUSD) ساخته شده و سودده است.
  • تایم فریم مخصوص این ربات بروی جفت ارز های مذکور h1 میباشد.

بک تست ربات معامله گر EURUSD و GBPUSD

حال بک تست ربات را بروی جفت ارز های گفته شده باهم ببینیم:

بک تست ربات معاملگر EURUSD و GBPUSD - نمودار h1 جفت ارز EURUSDtrading-bot-eurusd-and-gbpusd-on-GBPUSD-h1

همانطور که مشاهده میکنید سود حاصل از یک و ماه و نیم بک تست از همین الان (تاریخی که اسکیرین شات گرفته شده) باور نکردنی و برای EURUSD حدود 561% و برای GBPUSD حدود 929% میباشد.

تنظیمات ربات معامله گر EURUSD و GBPUSD

تنظیمات ربات معامله گر EURUSD و GBPUSD
تنظیمات ربات معامله گر EURUSD و GBPUSD

برای برنامه نویسان

سورس کد ربات معامله گر EURUSD و GBPUSD در زبان سی شارپ (C#) تحت تکنولوژی سی الگو (cAlgo) به شرح زیر است:

				
					using System;
using cAlgo.API;

namespace cAlgo.Robots
{
    [Robot("Robot Forex", AccessRights = AccessRights.None)]
    public class EURUSDGBPUSD_TradingRobot : Robot
    {
        [Parameter(DefaultValue = 10000, MinValue = 10000)]
        public int FirstLot { get; set; }

		[Parameter("Take_Profit", DefaultValue = 180, MinValue = 10)]
        public int TakeProfit { get; set; }
        
        [Parameter("Tral_Start", DefaultValue = 50)]
        public int Tral_Start { get; set; }
        
        [Parameter("Tral_Stop", DefaultValue = 50)]
        public int Tral_Stop { get; set; }

		[Parameter(DefaultValue = 300)]
        public int PipStep { get; set; }

		[Parameter(DefaultValue = 5, MinValue = 1)]
        public int MaxOrders { get; set; }
        
        private Position position;
		private bool RobotStopped;
		private int LotStep=10000;
		
        protected override void OnStart()
        {
            
        }

        protected override void OnTick()
        {
        double Bid=Symbol.Bid;
        double Ask=Symbol.Ask;
        double Point=Symbol.PointSize;      
        
        	if(Trade.IsExecuting) return;
        	if(Account.Positions.Count > 0 && RobotStopped) return;
        	else RobotStopped = false;

        	if(Account.Positions.Count == 0) 
        		SendFirstOrder(FirstLot);
        	else
        		ControlSeries();
        		
           foreach (var position in Account.Positions)
            {
            	if(position.SymbolCode == Symbol.Code)
            	{
            	
            		if(position.TradeType == TradeType.Buy)	
            		{
            		if (Bid-GetAveragePrice(TradeType.Buy)>=Tral_Start*Point)
            		if (Bid-Tral_Stop*Point>=position.StopLoss)
            		Trade.ModifyPosition(position, Bid-Tral_Stop*Point, position.TakeProfit);
            		}
            			
            		if(position.TradeType == TradeType.Sell)	
            		{
            		if (GetAveragePrice(TradeType.Sell)-Ask>=Tral_Start*Point)
            		if (Ask+Tral_Stop*Point<=position.StopLoss || position.StopLoss==0)
            		Trade.ModifyPosition(position, Ask+Tral_Stop*Point, position.TakeProfit);
            		}
            	}
             }        		
        }

        protected override void OnError(Error CodeOfError)
        {
            if(CodeOfError.Code == ErrorCode.NoMoney)
            {
            	RobotStopped = true;
            	Print("ERROR!!! No money for order open, robot is stopped!");
            }
            else if(CodeOfError.Code == ErrorCode.BadVolume)
            {
            	RobotStopped = true;
            	Print("ERROR!!! Bad volume for order open, robot is stopped!");
            }
        }
        
        private void SendFirstOrder(int OrderVolume)
        {
        	int Signal = GetStdIlanSignal();
        	if(!(Signal < 0))
        		switch(Signal)
        		{
        			case 0:
        				Trade.CreateBuyMarketOrder(Symbol, OrderVolume);
        			break;
        			case 1:
        				Trade.CreateSellMarketOrder(Symbol, OrderVolume);
        			break;
        		}
        }
        
        protected override void OnPositionOpened(Position openedPosition)
        {
			double? StopLossPrice = null;
            double? TakeProfitPrice = null;
			
			if(Account.Positions.Count == 1)
			{
				position = openedPosition;
				if( position.TradeType == TradeType.Buy)
		        	TakeProfitPrice = position.EntryPrice + TakeProfit * Symbol.PointSize;
				if( position.TradeType == TradeType.Sell)
	                TakeProfitPrice = position.EntryPrice - TakeProfit * Symbol.PointSize;
			}
			else
                switch(GetPositionsSide())
                {
                	case 0:
		                TakeProfitPrice = GetAveragePrice(TradeType.Buy) + TakeProfit * Symbol.PointSize;
                	break;
                	case 1:
		                TakeProfitPrice = GetAveragePrice(TradeType.Sell) - TakeProfit * Symbol.PointSize;
                	break;
                }

			for(int i = 0; i < Account.Positions.Count; i++)
        	{
				position = Account.Positions[i];
				if(StopLossPrice != null || TakeProfitPrice != null)
					Trade.ModifyPosition(position, position.StopLoss, TakeProfitPrice);
			}
        }

        private double GetAveragePrice(TradeType TypeOfTrade)
        {
        	double Result = Symbol.Bid;
			double AveragePrice = 0;
  			long Count = 0;

			for(int i = 0; i < Account.Positions.Count; i++)
			{
				position = Account.Positions[i];
				if(position.TradeType == TypeOfTrade)
   				{
   					AveragePrice += position.EntryPrice * position.Volume;
   					Count += position.Volume;
   				}
   			}
  			if(AveragePrice > 0 && Count > 0)
    			Result = AveragePrice / Count;
        	return Result;
        }

        private int GetPositionsSide()
        {
        	int Result = -1;
        	int i, BuySide = 0, SellSide = 0;
        	
        	for(i = 0; i < Account.Positions.Count; i++)
        	{
        		if(Account.Positions[i].TradeType == TradeType.Buy) BuySide++;
        		if(Account.Positions[i].TradeType == TradeType.Sell) SellSide++;
        	}
        	if(BuySide == Account.Positions.Count) Result = 0;
        	if(SellSide == Account.Positions.Count) Result = 1;
        	return Result;
        }
        
        private void ControlSeries()
        {
        	int _pipstep, NewVolume, Rem;
        	int BarCount = 25;
        	int Del = MaxOrders - 1;
        	
        	if(PipStep == 0)
        		_pipstep = GetDynamicPipstep(BarCount, Del);
        	else
        		_pipstep = PipStep;
        	
            if(Account.Positions.Count < MaxOrders)
	            switch(GetPositionsSide())
    	        {
    	          	case 0:
			        	if(Symbol.Ask < FindLastPrice(TradeType.Buy) - _pipstep * Symbol.PointSize)
			        	{
			        		NewVolume = Math.DivRem((int)(FirstLot + FirstLot*Account.Positions.Count), LotStep, out Rem) * LotStep;
    	    				if(!(NewVolume < LotStep))
	    	    				Trade.CreateBuyMarketOrder(Symbol, NewVolume);
			        	}
    	           	break;
    	           	case 1:
			        	if(Symbol.Bid > FindLastPrice(TradeType.Sell) + _pipstep * Symbol.PointSize)
			        	{
			        		NewVolume = Math.DivRem((int)(FirstLot + FirstLot*Account.Positions.Count), LotStep, out Rem) * LotStep;
    	    				if(!(NewVolume < LotStep))
    	    					Trade.CreateSellMarketOrder(Symbol, NewVolume);
			        	}
    	           	break;
    	        }
        }
        
        private int GetDynamicPipstep(int CountOfBars, int Del)
        {
        	int Result;
        	double HighestPrice = 0, LowestPrice = 0;
        	int StartBar = MarketSeries.Close.Count - 2 - CountOfBars;
        	int EndBar = MarketSeries.Close.Count - 2;
        	
        	for(int i = StartBar; i < EndBar; i++)
        	{
        		if(HighestPrice == 0 && LowestPrice == 0)
				{        		
        			HighestPrice = MarketSeries.High[i];
        			LowestPrice = MarketSeries.Low[i];
        			continue;
        		}
        		if(MarketSeries.High[i] > HighestPrice) HighestPrice = MarketSeries.High[i];
        		if(MarketSeries.Low[i] < LowestPrice) LowestPrice = MarketSeries.Low[i];
        	}
        	Result = (int)((HighestPrice - LowestPrice) / Symbol.PointSize / Del);
        	return Result;
        }
        
        private double FindLastPrice(TradeType TypeOfTrade)
        {
			double LastPrice = 0;

			for(int i = 0; i < Account.Positions.Count; i++) 
			{
		        position = Account.Positions[i];
		        if(TypeOfTrade == TradeType.Buy)
		        	if(position.TradeType == TypeOfTrade) 
          			{
	           			if(LastPrice == 0)
	           			{
	           				LastPrice = position.EntryPrice;
	           				continue;
	           			}
            			if(position.EntryPrice < LastPrice)
              				LastPrice = position.EntryPrice;
          			}
		        if(TypeOfTrade == TradeType.Sell)
		        	if(position.TradeType == TypeOfTrade) 
          			{
	           			if(LastPrice == 0)
	           			{
	           				LastPrice = position.EntryPrice;
	           				continue;
	           			}
            			if(position.EntryPrice > LastPrice)
              				LastPrice = position.EntryPrice;
          			}
          	}
          	return LastPrice;
        }
        
        private int GetStdIlanSignal()
        {
        	int Result = -1;
        	int LastBarIndex = MarketSeries.Close.Count - 2;
        	int PrevBarIndex = LastBarIndex - 1;
        	
        	if(MarketSeries.Close[LastBarIndex] > MarketSeries.Open[LastBarIndex])
				if(MarketSeries.Close[PrevBarIndex] > MarketSeries.Open[PrevBarIndex])
					Result = 0;
        	if(MarketSeries.Close[LastBarIndex] < MarketSeries.Open[LastBarIndex])
				if(MarketSeries.Close[PrevBarIndex] < MarketSeries.Open[PrevBarIndex])
					Result = 1;
        	return Result;
        }
    }
}
				
			

توضیحات تکمیلی

پسورد فایل

modernandishan.ir

لایسنس

نامحدود

ورژن

فاقد ورژن

حجم

263 کیلوبایت

نوع فایل دانلودی

ZIP

محتویات

فایل اجرایی و سورس کد

نوع فایل ربات

algo

ارسال نوتیفیکیشن

برند

cTrader

قدرتمند ترین نرم افزار مدیریت بازار های مالی و فارکس یعنی سی تریدر (cTrader) در اختیار مدرن اندیشان جی

دیدگاهها

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین نفری باشید که دیدگاهی را ارسال می کنید برای “ربات EURUSD و GBPUSD”

توضیحات تکمیلی

پسورد فایل

modernandishan.ir

لایسنس

نامحدود

ورژن

فاقد ورژن

حجم

263 کیلوبایت

نوع فایل دانلودی

ZIP

محتویات

فایل اجرایی و سورس کد

نوع فایل ربات

algo

ارسال نوتیفیکیشن

نکات قبل از خرید:

در خرید ربات ربات معامله گر EURUSD و GBPUSD به نکات زیر دقت کنید:

  • ربات های معامله گر هیچ کدام سود قطعی نمیدهند و صرفاً با قرارگیری در نقطه مناسبی از نمودار قیمت میتوانند عالی کار کنند. ربات معامله گر EURUSD و GBPUSD نیز از این قاعده مستثنا نیست!
  • شرکت مدرن اندیشان جی، ربات معامله گر EURUSD و GBPUSD را بروزرسانی و پشیتبانی نمیکند! این بروزرسانی توسط سایت رسمی ctrader.com انجام میشود و هر زمان بروزرسانی این ربات قرار گیرد بلافاصله از جانب ما نیز بروزرسانی میشود. استفاده از این ربات، سودده یا زیان ده بودن ربات به هیچ وجه به قوانین شرکت مربوط نمیشود و این ربات یک ربات رسمی سی تریدر است.
  • برای تشخیص روند صحیح برای قرار گرفتن ربات معامله گر بهتر است مقاله تشخیص روند نمودار قیمتی را در آکادمی مدرن اندیشان مطالعه کنید.

توضیحات تکمیلی

پسورد فایل

modernandishan.ir

لایسنس

نامحدود

ورژن

فاقد ورژن

حجم

263 کیلوبایت

نوع فایل دانلودی

ZIP

محتویات

فایل اجرایی و سورس کد

نوع فایل ربات

algo

ارسال نوتیفیکیشن

چند نکته در مورد این محصول بدانیم:

در خرید ربات ربات معامله گر EURUSD و GBPUSD به نکات زیر دقت کنید:

  • ربات های معامله گر هیچ کدام سود قطعی نمیدهند و صرفاً با قرارگیری در نقطه مناسبی از نمودار قیمت میتوانند عالی کار کنند. ربات معامله گر EURUSD و GBPUSD نیز از این قاعده مستثنا نیست!
  • شرکت مدرن اندیشان جی، ربات معامله گر EURUSD و GBPUSD را بروزرسانی و پشیتبانی نمیکند! این بروزرسانی توسط سایت رسمی ctrader.com انجام میشود و هر زمان بروزرسانی این ربات قرار گیرد بلافاصله از جانب ما نیز بروزرسانی میشود. استفاده از این ربات، سودده یا زیان ده بودن ربات به هیچ وجه به قوانین شرکت مربوط نمیشود و این ربات یک ربات رسمی سی تریدر است.
  • برای تشخیص روند صحیح برای قرار گرفتن ربات معامله گر بهتر است مقاله تشخیص روند نمودار قیمتی را در آکادمی مدرن اندیشان مطالعه کنید.

ربات EURUSD و GBPUSD

توضیحات

قبل از هر چیز باید بدانید که این ربات ایجاد شده توسط شرکت مدرن اندیشان نیست و یکی از برترین ربات های ساخته شده در سایت رسمی سی تریدر (ctrader.com) میباشد که توسط تیم منتخب شده و برای شما به صورت انحصاری با تنظیمات خاص در سایت ما ارائه میشود.

بنایراین توضیحات سازنده ربات به شرح ذیل است:

  • این ربات تنها برای جفت ارز های یورو مقابل دلار آمریکا (EURUSD) و پوند انگلستان مقابل دلار آمریکا (GBPUSD) ساخته شده و سودده است.
  • تایم فریم مخصوص این ربات بروی جفت ارز های مذکور h1 میباشد.

بک تست ربات معامله گر EURUSD و GBPUSD

حال بک تست ربات را بروی جفت ارز های گفته شده باهم ببینیم:

بک تست ربات معاملگر EURUSD و GBPUSD - نمودار h1 جفت ارز EURUSDtrading-bot-eurusd-and-gbpusd-on-GBPUSD-h1

همانطور که مشاهده میکنید سود حاصل از یک و ماه و نیم بک تست از همین الان (تاریخی که اسکیرین شات گرفته شده) باور نکردنی و برای EURUSD حدود 561% و برای GBPUSD حدود 929% میباشد.

تنظیمات ربات معامله گر EURUSD و GBPUSD

تنظیمات ربات معامله گر EURUSD و GBPUSD
تنظیمات ربات معامله گر EURUSD و GBPUSD

برای برنامه نویسان

سورس کد ربات معامله گر EURUSD و GBPUSD در زبان سی شارپ (C#) تحت تکنولوژی سی الگو (cAlgo) به شرح زیر است:

				
					using System;
using cAlgo.API;

namespace cAlgo.Robots
{
    [Robot("Robot Forex", AccessRights = AccessRights.None)]
    public class EURUSDGBPUSD_TradingRobot : Robot
    {
        [Parameter(DefaultValue = 10000, MinValue = 10000)]
        public int FirstLot { get; set; }

		[Parameter("Take_Profit", DefaultValue = 180, MinValue = 10)]
        public int TakeProfit { get; set; }
        
        [Parameter("Tral_Start", DefaultValue = 50)]
        public int Tral_Start { get; set; }
        
        [Parameter("Tral_Stop", DefaultValue = 50)]
        public int Tral_Stop { get; set; }

		[Parameter(DefaultValue = 300)]
        public int PipStep { get; set; }

		[Parameter(DefaultValue = 5, MinValue = 1)]
        public int MaxOrders { get; set; }
        
        private Position position;
		private bool RobotStopped;
		private int LotStep=10000;
		
        protected override void OnStart()
        {
            
        }

        protected override void OnTick()
        {
        double Bid=Symbol.Bid;
        double Ask=Symbol.Ask;
        double Point=Symbol.PointSize;      
        
        	if(Trade.IsExecuting) return;
        	if(Account.Positions.Count > 0 && RobotStopped) return;
        	else RobotStopped = false;

        	if(Account.Positions.Count == 0) 
        		SendFirstOrder(FirstLot);
        	else
        		ControlSeries();
        		
           foreach (var position in Account.Positions)
            {
            	if(position.SymbolCode == Symbol.Code)
            	{
            	
            		if(position.TradeType == TradeType.Buy)	
            		{
            		if (Bid-GetAveragePrice(TradeType.Buy)>=Tral_Start*Point)
            		if (Bid-Tral_Stop*Point>=position.StopLoss)
            		Trade.ModifyPosition(position, Bid-Tral_Stop*Point, position.TakeProfit);
            		}
            			
            		if(position.TradeType == TradeType.Sell)	
            		{
            		if (GetAveragePrice(TradeType.Sell)-Ask>=Tral_Start*Point)
            		if (Ask+Tral_Stop*Point<=position.StopLoss || position.StopLoss==0)
            		Trade.ModifyPosition(position, Ask+Tral_Stop*Point, position.TakeProfit);
            		}
            	}
             }        		
        }

        protected override void OnError(Error CodeOfError)
        {
            if(CodeOfError.Code == ErrorCode.NoMoney)
            {
            	RobotStopped = true;
            	Print("ERROR!!! No money for order open, robot is stopped!");
            }
            else if(CodeOfError.Code == ErrorCode.BadVolume)
            {
            	RobotStopped = true;
            	Print("ERROR!!! Bad volume for order open, robot is stopped!");
            }
        }
        
        private void SendFirstOrder(int OrderVolume)
        {
        	int Signal = GetStdIlanSignal();
        	if(!(Signal < 0))
        		switch(Signal)
        		{
        			case 0:
        				Trade.CreateBuyMarketOrder(Symbol, OrderVolume);
        			break;
        			case 1:
        				Trade.CreateSellMarketOrder(Symbol, OrderVolume);
        			break;
        		}
        }
        
        protected override void OnPositionOpened(Position openedPosition)
        {
			double? StopLossPrice = null;
            double? TakeProfitPrice = null;
			
			if(Account.Positions.Count == 1)
			{
				position = openedPosition;
				if( position.TradeType == TradeType.Buy)
		        	TakeProfitPrice = position.EntryPrice + TakeProfit * Symbol.PointSize;
				if( position.TradeType == TradeType.Sell)
	                TakeProfitPrice = position.EntryPrice - TakeProfit * Symbol.PointSize;
			}
			else
                switch(GetPositionsSide())
                {
                	case 0:
		                TakeProfitPrice = GetAveragePrice(TradeType.Buy) + TakeProfit * Symbol.PointSize;
                	break;
                	case 1:
		                TakeProfitPrice = GetAveragePrice(TradeType.Sell) - TakeProfit * Symbol.PointSize;
                	break;
                }

			for(int i = 0; i < Account.Positions.Count; i++)
        	{
				position = Account.Positions[i];
				if(StopLossPrice != null || TakeProfitPrice != null)
					Trade.ModifyPosition(position, position.StopLoss, TakeProfitPrice);
			}
        }

        private double GetAveragePrice(TradeType TypeOfTrade)
        {
        	double Result = Symbol.Bid;
			double AveragePrice = 0;
  			long Count = 0;

			for(int i = 0; i < Account.Positions.Count; i++)
			{
				position = Account.Positions[i];
				if(position.TradeType == TypeOfTrade)
   				{
   					AveragePrice += position.EntryPrice * position.Volume;
   					Count += position.Volume;
   				}
   			}
  			if(AveragePrice > 0 && Count > 0)
    			Result = AveragePrice / Count;
        	return Result;
        }

        private int GetPositionsSide()
        {
        	int Result = -1;
        	int i, BuySide = 0, SellSide = 0;
        	
        	for(i = 0; i < Account.Positions.Count; i++)
        	{
        		if(Account.Positions[i].TradeType == TradeType.Buy) BuySide++;
        		if(Account.Positions[i].TradeType == TradeType.Sell) SellSide++;
        	}
        	if(BuySide == Account.Positions.Count) Result = 0;
        	if(SellSide == Account.Positions.Count) Result = 1;
        	return Result;
        }
        
        private void ControlSeries()
        {
        	int _pipstep, NewVolume, Rem;
        	int BarCount = 25;
        	int Del = MaxOrders - 1;
        	
        	if(PipStep == 0)
        		_pipstep = GetDynamicPipstep(BarCount, Del);
        	else
        		_pipstep = PipStep;
        	
            if(Account.Positions.Count < MaxOrders)
	            switch(GetPositionsSide())
    	        {
    	          	case 0:
			        	if(Symbol.Ask < FindLastPrice(TradeType.Buy) - _pipstep * Symbol.PointSize)
			        	{
			        		NewVolume = Math.DivRem((int)(FirstLot + FirstLot*Account.Positions.Count), LotStep, out Rem) * LotStep;
    	    				if(!(NewVolume < LotStep))
	    	    				Trade.CreateBuyMarketOrder(Symbol, NewVolume);
			        	}
    	           	break;
    	           	case 1:
			        	if(Symbol.Bid > FindLastPrice(TradeType.Sell) + _pipstep * Symbol.PointSize)
			        	{
			        		NewVolume = Math.DivRem((int)(FirstLot + FirstLot*Account.Positions.Count), LotStep, out Rem) * LotStep;
    	    				if(!(NewVolume < LotStep))
    	    					Trade.CreateSellMarketOrder(Symbol, NewVolume);
			        	}
    	           	break;
    	        }
        }
        
        private int GetDynamicPipstep(int CountOfBars, int Del)
        {
        	int Result;
        	double HighestPrice = 0, LowestPrice = 0;
        	int StartBar = MarketSeries.Close.Count - 2 - CountOfBars;
        	int EndBar = MarketSeries.Close.Count - 2;
        	
        	for(int i = StartBar; i < EndBar; i++)
        	{
        		if(HighestPrice == 0 && LowestPrice == 0)
				{        		
        			HighestPrice = MarketSeries.High[i];
        			LowestPrice = MarketSeries.Low[i];
        			continue;
        		}
        		if(MarketSeries.High[i] > HighestPrice) HighestPrice = MarketSeries.High[i];
        		if(MarketSeries.Low[i] < LowestPrice) LowestPrice = MarketSeries.Low[i];
        	}
        	Result = (int)((HighestPrice - LowestPrice) / Symbol.PointSize / Del);
        	return Result;
        }
        
        private double FindLastPrice(TradeType TypeOfTrade)
        {
			double LastPrice = 0;

			for(int i = 0; i < Account.Positions.Count; i++) 
			{
		        position = Account.Positions[i];
		        if(TypeOfTrade == TradeType.Buy)
		        	if(position.TradeType == TypeOfTrade) 
          			{
	           			if(LastPrice == 0)
	           			{
	           				LastPrice = position.EntryPrice;
	           				continue;
	           			}
            			if(position.EntryPrice < LastPrice)
              				LastPrice = position.EntryPrice;
          			}
		        if(TypeOfTrade == TradeType.Sell)
		        	if(position.TradeType == TypeOfTrade) 
          			{
	           			if(LastPrice == 0)
	           			{
	           				LastPrice = position.EntryPrice;
	           				continue;
	           			}
            			if(position.EntryPrice > LastPrice)
              				LastPrice = position.EntryPrice;
          			}
          	}
          	return LastPrice;
        }
        
        private int GetStdIlanSignal()
        {
        	int Result = -1;
        	int LastBarIndex = MarketSeries.Close.Count - 2;
        	int PrevBarIndex = LastBarIndex - 1;
        	
        	if(MarketSeries.Close[LastBarIndex] > MarketSeries.Open[LastBarIndex])
				if(MarketSeries.Close[PrevBarIndex] > MarketSeries.Open[PrevBarIndex])
					Result = 0;
        	if(MarketSeries.Close[LastBarIndex] < MarketSeries.Open[LastBarIndex])
				if(MarketSeries.Close[PrevBarIndex] < MarketSeries.Open[PrevBarIndex])
					Result = 1;
        	return Result;
        }
    }
}
				
			

توضیحات تکمیلی

پسورد فایل

modernandishan.ir

لایسنس

نامحدود

ورژن

فاقد ورژن

حجم

263 کیلوبایت

نوع فایل دانلودی

ZIP

محتویات

فایل اجرایی و سورس کد

نوع فایل ربات

algo

ارسال نوتیفیکیشن

برند

cTrader

قدرتمند ترین نرم افزار مدیریت بازار های مالی و فارکس یعنی سی تریدر (cTrader) در اختیار مدرن اندیشان جی

دیدگاهها

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین نفری باشید که دیدگاهی را ارسال می کنید برای “ربات EURUSD و GBPUSD”

ثبت سفارش سریع پروژه شما

کمتر یک ساعت در ساعات کاری با شما تماس حاصل میشود. تنها پروژه ی خود را طور خلاصه شرح دهید یا اگر فایلی مرتبط با ان دارد باگذاری کنید.

ارتباط سریع

فرم زیر را تکمیل کنید. در ساعات کاری کمتر از یک ساعت پس از ارسال با شما تماس کرفته میشود.