0 beğenilme 0 beğenilmeme
778 kez görüntülendi
mavilimw indikatörünün renk değişimlerinde alarm ile alım satım yapmak istiyorum..alarm kuruyorum ama istediğim gibi olmuyor her bar kapanısı alım yada satım yapıyor ben sadece renk değişimlerinde alım satın yapsın istiyorum.. bu konuda yardım istiyorum lutfen bana bir aceminin yapabıleceği şekilde anlatın... 2 gün öncede farklı bir soru sordum cevaplanmadı destek varsa bi zahmet görelim saygılar
Algoritmik Trading kategorisinde (24 puan) tarafından | 778 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhaba,

IQ tarafında kod yazmak zaman alıyor. Olmayan indikatörler düzenli olarak eklenmektedir.

Şu aşamada, mavilim içini yapmak istediğiniz,  indikatör alarmı ile yapamazsınız. Formüllü fiyat penceresi üzerinden veya strateji yazarak yapılabilir.

Alım satım yapmak istiyorum dediğiniz için, strateji olarak hazırladık.

Kodu aşağıdadır. 

Stratejinin adını

MAVILIMRENKDONUS  olarak başlatınız. 

İyi çalışmalar.

***STRATEJILERI TEST/DENEME ORTAMINDA SINAMADAN VE SIZIN ISTEDIGINIZ SEKILDE CALISTIGINA EMIN OLMADAN GERCEK ORTAMDA HIC BIR ZAMAN CALISTIRMAYIN***

 

 

using System;

using System.Collections.Generic;

using System.Linq;

using Matriks.Data.Symbol;

using Matriks.Engines;

using Matriks.Indicators;

using Matriks.Symbols;

using Matriks.AlgoTrader;

using Matriks.Trader.Core;

using Matriks.Trader.Core.Fields;

using Matriks.Trader.Core.TraderModels;

using Matriks.Lean.Algotrader.AlgoBase;

using Matriks.Lean.Algotrader.Models;

using Matriks.Lean.Algotrader.Trading;

 

namespace Matriks.Lean.Algotrader

{

public class MAVILIMRENKDONUS : 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 Symbol;

 

[Parameter(SymbolPeriod.Min60)]

public SymbolPeriod SymbolPeriod;

 

[Parameter(1)]

public int Quantity;

 

[Parameter(3)]

public int firstMovPeriod;

 

[Parameter(9)]

public int secondMovPeriod;

 

MAVILIMW mavilimw;

 

public override void OnInit()

{

mavilimw = MAVILIMWIndicator(Symbol, SymbolPeriod, firstMovPeriod, secondMovPeriod );

AddSymbol(Symbol, SymbolPeriod);

 

//Eger backtestte emri bir al bir sat seklinde gonderilmesi isteniyor bu true set edilir. 

//Alttaki satırı silerek veya false geçerek emirlerin sirayla gönderilmesini engelleyebilirsiniz. 

SendOrderSequential(true);

WorkWithPermanentSignal(true);

}

 

/// <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(BarDataCurrentValues barDataCurrentValues)

{

var barData = GetBarData();

var Refmavilimw1 = Ref(mavilimw, -1);

var Refmavilimw2 = Ref(mavilimw, -2);

 

 

if (mavilimw.CurrentValue>Refmavilimw1 && Refmavilimw1<Refmavilimw2)

{

SendMarketOrder(Symbol, Quantity, OrderSide.Buy);

Debug("Alis emri gonderildi");

}

 

 

if (mavilimw.CurrentValue<Refmavilimw1 && Refmavilimw1>Refmavilimw2)

{

SendMarketOrder(Symbol, Quantity, OrderSide.Sell);

Debug("Satis emri gonderildi");

}

 

}

}

}

(12,790 puan) tarafından
0 0
teşekkür ettim sağolun iyi çalışmalar
0 0
stratejide şöyle bi sorunum var binancede btc de işlem yapabilmek için 0.001 ile yada ustü ile girmem lazım ama 0.dan sonra kabul etmiyor bunu nasıl aşacağız... 1 btc için yeterli param yok 1 ve üstünü kabul ediyor... diğer sorum binancede miktar yazıp alıyoruz 5 yazıyorum 4.95 keliyor komisyon sonrası alım tm satım olacağı zaman miktarı 5 olmadığı için emir iptal oluyor bu stratejiyi aşağıdaki gibi ayarlayabilirmisiniz ben  ekleyemedim hata veriyor error cs0103 geçerli bağlamda yok

[Parameter(1)]
        public decimal SellOrderQuantity;

        [Parameter(1)]
        public decimal BuyOrderQuantity;
0 0
Merhaba,

Şu satırı:

[Parameter(1)]

public int Quantity;

 

şöyle değiştiriniz ve kodu derle yapınız.

[Parameter(1)]

public decimal Quantity;
0 0
teşekkur ettim oldu... son olarak emir gönderimi sırasında şöyle bi hata aldım türkçe acıklamada bulamadım internette bu neden olabilir bilginiz varmı......  error: Timestamp for this request was 1000ms ahead of the server's
Hoş geldiniz, Matriks Destek Platformu sizlere sorularınızın hızlıca cevaplanması için bir ortam sağlar. 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.



7,518 soru
7,521 cevap
4,406 yorum
8,763 kullanıcı