Matriks Destek ve Yardım Platformu

Matriks Ürünleri ile ilgili tüm sorularınız için bizlere buradan ulaşabilirsiniz. Daha önce sorulan soruları ve verilen cevapları ilgili sekmelerden ve arama üzerinden inceleyebilirsiniz. Sağ taraftaki kategoriler üzerinden İlgilendiğiniz özelliklerle ilgili soruları filtreleyebilirsiniz. Soru ve cevapları sosyal medyada paylaşabilirsiniz. Sorduğunuz ve cevapladığınız soruların ve yorumlarınızın aldığı oylar üzerinden puan kazanırsınız. Puan sistemine bağlı kampanyamızla ücretsiz kullanım avantajlarından faydalanabilirsiniz.

0

basit bir algoritmafakat yapamadım.

Soruldu
Kategori
İndikator
Görüntülenme
1.432 görüntülenme
Durum
Cevaplandı
stochastic rsi k d yi 80 in üstünde aşağıya kırdığında, cci 150 yi aşağı kırdığında short pozisyon açıp cci -150 yi aşağı kırdığında longu kapatacak

stocrsi k dyi 20 nin altında yukarı kırdığında , cci -150 yi yukarı kırdığında long pozisyon açıp cci -150 yi yukarı kırdığında pozisyonu kapatacaK  kodlar nelerdir.

kod bilgim yok. yaptığım stratejilerde al ya da sat pozisyonu kapanmıyor. çözemedim birtürlü. binance futures da işlem açacak şimdiden teşekkürler
Paylaş

1 Cevap

0

 Merhabalar,

Dilerseniz aşağıdaki  kodu inceleyebilirsiniz.

Ayrıca bu tarz yapıları Algoritma sihirbazında rahatlıkla hazırlayabilirsiniz.

Lütfen linkleri inceleyiniz.

https://destek.matriksdata.com/?qa=6289/algoritma-sihirbazi-farkli-parametreler-oldu%C4%9Funda&show=6289#q6289

https://destek.matriksdata.com/?qa=4438/iq-algoritma-sihirbaz%C4%B1n%C4%B1-nas%C4%B1l-kullan%C4%B1r%C4%B1z

https://destek.matriksdata.com/?qa=4448/algoritma-sihirbaz%C4%B1-kullan%C4%B1m%C4%B1-%C3%B6rnekler-%C3%A7oklu-ko%C5%9Ful-olu%C5%9Fturma

using System;
using System.Collections.Generic;
using System.Linq;
using Matriks.Data.Symbol;
using Matriks.Engines;
using Matriks.Indicators;
using Matriks.Symbols;
using Matriks.Trader.Core;
using Matriks.Trader.Core.Fields;
using Matriks.Lean.Algotrader.AlgoBase;
using Matriks.Lean.Algotrader.Models;
using Matriks.Lean.Algotrader.Trading;
using Matriks.AI;
using Matriks.AI.AiParameters;
using Matriks.AI.Data;
using Matriks.Trader.Core.TraderModels;

namespace Matriks.Lean.Algotrader
{
	public class torumacto : MatriksAlgo
	{
		// Strateji çalıştırılırken kullanacağımız parametreler. Eğer sembolle ilgili bir parametre ise,
		// "SymbolParameter" ile, değilse "Parameter" ile tanımlama yaparız. Parantez içindeki değerler default değerleridir.


		[SymbolParameter("GARAN")]
			public string Symbol1;


		[Parameter(SymbolPeriod.Day)]
			public SymbolPeriod SymbolPeriod1;


		[Parameter(14)]
			public int StochasticrsiRsiPeriod1;

		[Parameter(14)]
			public int StochasticrsiStochasticPeriod1;

		[Parameter(3)]
			public int StochasticrsiKPeriod1;

		[Parameter(3)]
			public int StochasticrsiDPeriod1;

		[Parameter(MovMethod.E)]
			public MovMethod StochasticrsiSmoothMethod1;

		[Parameter(14)]
			public int CciPeriod1;

		[Parameter(1)]
			public decimal OrderQuantity1;

		[Parameter(1)]
			public decimal OrderQuantity2;

		[Parameter(1)]
			public decimal OrderQuantity3;

		[Parameter(1)]
			public decimal OrderQuantity4;

		[Parameter(3)]
			public int Kaldirac;

		StochasticRSI stochasticRSI;
		CCI cci;



		public override void OnInit()
		{

			stochasticRSI = StochasticRSIIndicator(Symbol1, SymbolPeriod1, OHLCType.Close, StochasticrsiRsiPeriod1, StochasticrsiStochasticPeriod1, StochasticrsiKPeriod1, StochasticrsiDPeriod1, StochasticrsiSmoothMethod1);
			cci = CCIIndicator(Symbol1, SymbolPeriod1, OHLCType.Close, CciPeriod1);


			SendOrderSequential(true, Side.Buy);
			SendOrderSequentialForShort(true, Side.Sell);

			WorkWithPermanentSignal(true);

			// Gerekli - Kaldıraç			
			SetLeverage(Symbol1, Kaldirac); // kaldıraç oranı			
			SetLeverageType(Symbol1, true); // kaldıraç tipi - true isolated, false cross
			// #Gerekli - Kaldıraç
		}

		/// <summary>
		/// Eklenen sembollerin bardata'ları ve indikatorler güncellendikçe bu fonksiyon tetiklenir. 
		/// </summary>
		/// <param name="barData">Bardata ve hesaplanan gerçekleşen işleme ait detaylar</param>
		public override void OnDataUpdate(BarDataEventArgs barData)
		{
			if (stochasticRSI.Value[0][stochasticRSI.CurrentIndex] > stochasticRSI.Value[1][stochasticRSI.CurrentIndex] && CrossAbove(cci, -150m, 0) && stochasticRSI.Value[0][stochasticRSI.CurrentIndex] < 20m)
			{
				SendMarketOrder(Symbol1, OrderQuantity1, OrderSide.Buy, includeAfterSession:false);
			}
			if (CrossBelow(cci, -150m, 0))
			{
				SendMarketOrder(Symbol1, OrderQuantity2, OrderSide.Sell, includeAfterSession:false);
			}
			if (stochasticRSI.Value[0][stochasticRSI.CurrentIndex] > 80m && stochasticRSI.Value[0][stochasticRSI.CurrentIndex] < stochasticRSI.Value[1][stochasticRSI.CurrentIndex] && CrossBelow(cci, 150m, 0))
			{
				SendShortSaleMarketOrder(Symbol1, OrderQuantity3);
			}
			if (CrossAbove(cci, -150m, 0))
			{
				SendMarketCloseShortOrder(Symbol1, OrderQuantity4);
			}

		}

		/// <summary>
		/// Gönderilen emirlerin son durumu değiştikçe bu fonksiyon tetiklenir.
		/// </summary>
		/// <param name="barData">Emrin son durumu</param>
		public override void OnOrderUpdate(IOrder order)
		{
		}

		/// <summary>
		/// Strateji durdurulduğunda bu fonksiyon tetiklenir.
		/// </summary>
		public override void OnStopped()
		{
		}
	}
}

İyi çalışmalar.

BağlantıBayraklaasiyangMatriks Destek11.113

Yorumlar (3)

  • ▲0
    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)7843

    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)28147

    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)47743

    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)76047

    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)105047

    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)133847

    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)162547

    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)190347

    error CS0246: rsicecci' türü veya ad alanı adı bulunamadı (bir using yönergeniz veya derleme başvurunuz mu eksik?)219747

    böyle bir hata zinciri geldi
  • ▲0

    Merhabalar,

    Oluşturduğunuz stratejinin ismini torumacto yapmadıysanız hata alabilirsiniz.

    Lütfen strateji isminizin class ile aynı olduğuna emin olunuz.

    İyi çalışmalar.

  • ▲0
    kod son şekli ile çalıştı. fakat ben futures da işlem yaptırmak istiyorum. kaldıraç traling stop vs yok içinde :/

Cevabınız

Cevap yazmak için giriş yapın.Giriş yapKayıt ol