Önemli hatırlatma!
Sinyal botunuzdan gelen JSON mesajını herkese açık olarak PAYLAŞMAYIN. Yanlışlıkla paylaştıysanız, güvende kalmak için lütfen bu botu silin ve yeni bir tane oluşturun.
JSON nedir ve ne işe yarar?
JSON, verileri depolamak ve taşımak için kullanılan bir format türüdür. JavaScript Object Notation anlamına gelir.
3Commas'ta Signal botu veya bir DCA botu oluştururken, sistem otomatik olarak benzersiz bir JSON dosyası oluşturur, bazen buna “JSON mesajı” denir. Botlarınızın çalışmasını sağlamak için tüm önemli verileri içerir. TradingView, POST talebindeki verileri aktarmak için JSON formatını kullanır.
Bu makalede JSON dosyasının içerdiği tüm parametreleri açıklayacağız.
“ İndikatörler” ve “Stratejiler” arasındaki fark.
İndikatörler, TradingView'in Pine Script dilinde yazılmış herhangi bir hesaplamayı gerçekleştirebilen ve bunları bir grafikte görüntüleyebilen komut dosyalarıdır.
İndikatörlerin bildirim işlevi, belirli bir koşul karşılandığında bir bildirim gönderilmesine izin verir. Koşul, kullanıcı veya indikatörün yazarı tarafından belirlenebilir.
Stratejiler, TradingView Pine Script programlama dilinde yazılmış komut dosyalarıdır, ancak işlemi simüle etmek ve TradingView üzerindeki etkinliğini kontrol etmek için geçmiş veriler üzerinde test yapmak için tasarlanmıştır, başka bir deyişle geriye dönük test olarak adlandırılabilir. Stratejinin çalıştırılmasının bir sonucu olarak, girişler ve çıkışlar grafikte ok işaretleri kullanılarak görüntülenir.
Stratejiler ayrıca, bir pozisyon değiştiğinde bildirim gönderen bir alarm işlevini de destekler. Böylece, stratejinizi gerçek piyasada uygulayabilirsiniz. Ancak, TradingView alarmlarının talepler yürütüldüğünde geleceğini ve bunun bir talepte bulunmakla aynı şey olmadığını unutmamak önemlidir. Talepte yer alan veriler, alarmınız için bir bildirim oluşturmak için kullanılacak ve ilgili değerle değiştirilecektir.
JSON mesajı nasıl görünür?
Sinyal Botumuz tarafından desteklenen çeşitli uyarıların özelliklerine daha yakından bakalım. Çift küme parantezi içine alınmış değerler, sinyal kaynağından gelen yer placeholder değerlerdir.
Örnek:
{
"secret": "the unique token for your bot, don't share it with anyone!",
"max_lag": "300",
"timestamp": "{{timenow}}",
"trigger_price": "{{close}}",
"tv_exchange": "{{exchagne}}",
"tv_instrument": "{{ticker}}",
"action": "enter_long",
"bot_uuid": "signal-bot-uuid",
"order": {
"amount": "{{place_you_amount_here}}",
"currency_type": "quote"
}
}
Ana alanların açıklaması
“secret”
{
...
"secret": "token",
...
}
“secret” - kullanımı zorunludur. Belirli bir bot içinde ve tek bir kullanıcı için gelen isteklerin kimliğini doğrulamak için benzersiz bir 3Commas belirtecidir. Belirteç, Signal Bot oluşturulduğunda otomatik olarak oluşturulur.
Önemli güvenlik notu: Webhook ayarlarken ve gönderirken, iletilen bu alanları herkese açık hale getirmediğinizden emin olun!
“max_lag”
{
...
"max_lag": "300",
...
}
“max_lag” - stratejinizi yürütürken oluşabilecek maksimum gecikmeyi temsil eden isteğe bağlı bir alandır.
Gecikmeler, ağ gecikmesi veya veri işleme süresi gibi çeşitli nedenlerle ortaya çıkabilir. Kontrol, bot bir emir vermeye çalışmadan ÖNCE gerçekleştirilir.
Maksimum bir gecikme belirlemek, stratejinizin performansını değerlendirmek ve alım satımın zaman boyutunu yönetmek için faydalı olabilir. Gecikme bu eşiği aşarsa, stratejide veya stratejinin yürütülmesinde araştırılması ve muhtemelen ele alınması gereken sorunlara işaret edebilir.
İzin verilen maksimum sinyal işleme gecikmesi: 10 ile 86400 arasında tamsayı değeri.
Varsayılan: 300. Saniye cinsinden ölçülür.
“max_lag” değeri, ‘timestamp’ sinyalinin gönderilmesi ile botun bu sinyali ilk işlediği an arasındaki süre karşılaştırılarak hesaplanır. Eğer JSON kodunda "max_lag": "300"
ise, izin verilen gecikmenin 300 saniye veya 5 dakika olduğu anlamına gelir. Gecikme değeri belirtilen sınırı aşarsa, sinyal geçersiz sayılabilir veya bir hata ile işlenebilir.
“timestamp”
{
...
"timestamp": "{{timenow}}",
...
}
“timestamp” - sinyalin üretildiği zamanın zaman damgasını temsil eden isteğe bağlı bir alandır.
Zaman damgası verileri senkronize etmek, zaman trendlerini analiz etmek ve piyasa olaylarının zamansal sırasını anlamak için kullanılabilir.
Sinyal tetikleme zamanı ISO8601 formatında kabul edilir.
{{timenow}} verisi bu alana sinyal kaynağından gelir.
“trigger_price”
{
...
"trigger_price": "{{close}}",
...
}
“trigger_price”, olayın veya koşulun alım satım sinyalini tetiklediği fiyatı temsil eden isteğe bağlı bir alandır.
Bu, hareketli bir ortalamanın, destek veya direnç seviyesinin geçişi gibi belirli bir seviyeye ulaşan bir varlığın fiyatı veya sisteminizde belirli bir stratejiyi tetikleyen bir fiyat olabilir.
Tetikleyici fiyat bilgisi, hangi olayların veya koşulların alım satım sinyallerinin ateşlenmesine neden olduğunu ve bu sinyallere yanıt olarak hangi eylemlerin gerçekleştirilebileceğini anlamak için önemlidir.
{{close}} verileri bu alana sinyal kaynağından gelir.
“tv_exchange”
{
...
"tv_exchange": "{{exchagne}}",
...
}
“tv_exchange” alım satım sinyalinin veya verisinin ilişkili olduğu borsa hakkındaki bilgileri temsil eden zorunlu bir alandır.
Bu alan, alım satım verilerinin alındığı alım satım hizmetini veya borsayı gösterir.
Örneğin, “tv_exchange” değeri, alım satım verilerinin nereden geldiğine bağlı olarak BINANCE, OKX, BYBIT vb. olabilir.
Bu bilgi, alım satım verilerinin kaynağını belirlemek ve izlemek için önemlidir ve ayrıca belirli borsalardan veya hizmetlerden gelen verileri analiz etmek için de kullanılabilir.
{{exchange}} verileri bu alana sinyal kaynağından gelir.
“tv_instrument”
{
...
"tv_instrument": "{{ticker}}",
...
}
“tv_instrument”, alım satım sinyali veya verileriyle ilişkili aracı veya varlığı temsil eden zorunlu bir alandır.
Bu alan, alım satım verilerinin alındığı vadeli işlem sözleşmesi veya parite gibi belirli bir finansal aracı gösterir.
Bu bilgiler, alım satımı yapılan varlığın tanımlanması ve alım satım faaliyetinin ve özelliklerinin analiz edilmesi için önemlidir.
{{ticker}} verileri bu alana sinyal kaynağından gelir.
Pariteler için kullanılan formata dikkat etmek önemlidir.
Örneğin:
Binance Futures perpetual'da BTC/USDT paritesi için: “BTCUSDT.P” (3Commas kullanıcı arayüzünde BTCUSDT/USDT)
Orijinal mesajın bir kısmının JSON biçiminde nasıl göründüğüne dair örnek:
{
...
"tv_exchange": "{{exchange}}",
"tv_instrument": "{{ticker}}",
...
}
İşte nasıl değiştirebileceğiniz:
{
...
"tv_exchange": "BINANCE",
"tv_instrument": "BTCUSDT.P",
...
}
Bu değişiklikleri yaparak, sinyal 3Commas'taki BTCUSDT/USDT paritesine uygulanacaktır. Doğruluğu sağlamak için parite formatını iki kez kontrol ettiğinizden emin olun.
“action”
“action”, alınan alım satım sinyaline veya koşuluna yanıt olarak gerçekleştirilmesi gereken eylemi temsil eden zorunlu bir alandır.
Lütfen dikkat: Sinyal eylemleri farklı pozisyon koşulları altında farklılık gösterebilir.
“action” değerlerine örnekler:
1. "enter_long" - Bir varlık satın alın veya bir long pozisyona girin:
{
...
"action": "enter_long",
...
}
Eğer:
bir Long pozisyon açıksa, bot bu pozisyona order.amount miktarı veya bot oluşturulurken belirtilen miktar kadar fon ekleyecektir;
açık bir pozisyon yoksa, bot order.amount veya bot oluşturulurken belirtilen miktar ile bir Long pozisyon açacaktır;
botun “Ters pozisyon” modu AÇIK ise ve Short pozisyon açıksa, bot Short pozisyonu piyasa fiyatından kapatacak (karda veya zararda olmasına bakılmaksızın) ve order.amount veya bot oluşturulurken belirtilen miktarla bir Long pozisyon açacaktır.
2. "enter_short" - Bir varlık satma veya Short pozisyona girme.
Örnek:
{
...
"action": "enter_short",
...
}
Aşağıdaki durumlarda:
açık bir short pozisyon varsa, bot pozisyona order.amount miktarında veya bot oluşturulduğunda belirtilen miktarda fon ekleyecektir.
açık pozisyon yoksa bot, order.amount miktarında veya bot oluşturulduğunda belirtilen miktarda bir short pozisyon açacaktır.
botta “Ters pozisyon” modu etkinse ve şu anda uzun bir pozisyon açıksa, bot SmartTrade long pozisyonunu piyasa fiyatından kapatacak ve order.amount miktarında veya bot oluşturulduğunda belirtilen miktarda bir short pozisyon açacaktır (şu anda kârda veya zararda olup olmadığına bakılmaksızın).
3. "exit_long" - Bir varlığı satma veya long pozisyondan çıkma.
Örnek:
{
...
"action": "exit_long",
...
}
Aşağıdaki durumlarda:
long bir pozisyon açıksa, pozisyonu kontrol edin. Long pozisyonun hacmi order.amount değerinden büyükse, order.amount değerini veya bot oluşturulduğunda belirtilen miktarı açık pozisyondan çıkarır.
long pozisyonun hacmi order.amount değerinden düşükse, bot SmartTrade long pozisyonunu piyasa fiyatından kapatacaktır.
Açık bir long pozisyon yoksa sinyal 'Reddedildi' durumuyla yok sayılır.
4. "exit_short" - Bir varlık satın alın veya short pozisyondan çıkın.
Örnek:
{
...
"action": "exit_short",
...
}
Aşağıdaki durumlarda:
açık bir short pozisyon varsa pozisyonu kontrol edin. Short pozisyonun hacmi order.amount değerinden büyükse, order.amount değerini veya bot oluşturulduğunda belirtilen miktarı açık pozisyondan çıkarır.
short pozisyonun hacmi order.amount değerinden küçükse, bot SmartTrade short pozisyonunu piyasa fiyatından kapatacaktır.
açık bir short pozisyon yoksa sinyal 'Reddedildi' durumuyla yok sayılır.
“bot_uuid”
{
...
"bot_uuid": "signal-bot-uuid",
...
}
“bot_uuid”, 3Commas sistemindeki Signal Bot'un benzersiz tanımlayıcısını temsil eden gerekli bir alandır.
Önemli güvenlik notu: Webhook ayarlarken ve gönderirken, iletilen bu alanları herkese açık hale getirmediğinizden emin olun!
“order.amount”
{
...,
"order": {
"amount": {{place_you_amount_here}},
...
}
}
order.amount - diğer Signal bot ayarlarına bağlı olarak kullanılır.
Signal botunda emir büyüklüğünü belirtmek için harici bir kaynak belirtilmişse, bot bu alanda emir büyüklüğü bilgisinin sinyal ile gelmesini bekleyecektir.
Emir büyüklüğü botun kendisinde zaten belirtilmişse, bot yalnızca bu belirtilen ayarları dikkate alacak ve oraya herhangi bir sayı girseniz bile order.amount değerini göz ardı edecektir.
Örneğin, order.amount değeri 100'e eşitse, bot 100 birim varlık almaya veya satmaya çalışacaktır.
Bu alana {{place_you_amount_here}} verileri sinyal kaynağından (TradingView gibi) gelir.
“order.currency_type”
“order.currency_type” - isteğe bağlı bir parametredir. Emirlerde kullanılacak para birimi türünü (Quote veya Base) ayarlar.
Bu bilgi, kullanılan para birimi türünü belirlemek için önemlidir ve hesaplama ve işlemlerin yürütülmesinde doğruluk sağlar.
“order.currency_type” değeri aşağıdaki gibi olabilir:
"quote" - emir boyutunun BTC/USDT paritesinde USDT gibi Quote para biriminde belirlendiği anlamına gelir.
"base" - ETH/USDT paritesinde emir boyutunun ETH gibi Base para biriminde ayarlandığı anlamına gelir.
"margin_percent" - pozisyonu açmak için ayarlanabilir. Bot ayarlarının “Max. initial margin” alanında belirtilen sayıdan “amount” alanında belirtilen yüzdeyi temsil eder.
Örneğin:
“Maks. başlangıç marjı” 100 USDT'dir. Margin_percent ayarında %50 yazıyoruz. Gerçek emir büyüklüğü 100*%50=50 USDT çarpı kaldıraç olacaktır:
{
...,
"order": {
"amount": "{{place_you_amount_here}}",
"currency_type": "margin_percent"
}
}Aşağıdaki şekilde değiştirebilirsiniz:
{
...,
"order": {
"amount": "50",
"currency_type": "margin_percent"
}
}
"position_percent" - pozisyonu kapatmak için kullanılabilir ve mevcut pozisyon boyutunun yüzdesini temsil eder.
Örneğin, pozisyonunuz $10000 ise ve “position_percent” %50 olarak ayarlanmışsa, bu sinyal ile mevcut pozisyonunuzun yarısını veya $5000'ını kapatacaksınız. Sinyal ile tüm pozisyonu ( Long veya Short) kapatmak istiyorsanız, bu parametre numarasını 100 olarak girmeniz gerekir.
Örnek:{
...,
"order": {
"amount": "{{place_you_amount_here}}",
"currency_type": "position_percent"
}
}Aşağıdaki şekilde değiştirebilirsiniz:
{
...,
"order": {
"amount": "50",
"currency_type": "position_percent"
}
}
"order_type"
Opsiyonel bir parametredir. Burada, Entry long veya Entry short emir türünü Market veya Limit olarak ayarlayabilirsiniz. Bu parametreyi yalnızca bir emir büyüklüğü türü için “Webhook ile gönder..." seçeneğini seçerseniz ayarlayabilirsiniz.
Market emri için mesaj kısmı şu şekilde görünür:
{
...
"order": {
"amount": "30",
"order_type": "market"
}
}
Limit emri için mesaj kısmı aşağıdaki gibi görünür:
{
...
"order": {
"amount": "30",
"order_type": "limit",
"currency_type": "quote",
"price": "0.58",
//don't add both "price" and "price_percent"
"price_percent": -5
"price_percent_ref_type": "avg_entry_price"
}
}
"price
" için, botun emir vermesi gereken paritenin tam fiyatını belirtmeniz gerekir.
"price_percent
" için, sinyal alındığında botun emri fiyattan ne kadar uzakta vermesi gerektiğini (% olmadan) girmeniz gerekir.
Ayrıca, ne tür bir sapma kullanmak istediğinizi belirtmek için "price_percent_ref_type
" parametresini ekleyebilirsiniz:
current_price
- bu varsayılan ayardır - bu durumda fiyat, sinyal alındığında geçerli olan fiyattan hesaplanacaktır.base_entry_price
- bu fiyat işlemin Temel emir fiyatından hesaplanır.avg_entry_price
- bu fiyat işlemin ortalama giriş fiyatından hesaplanır.
Koda “price_percent_ref_type
” eklenmezse, bot varsayılan olarak sinyali aldığı andaki mevcut fiyattan sayacaktır.
“price_percent” parametrelerinin kullanımıyla ilgili bazı ayrıntıları burada bulabilirsiniz:
"
price_percent
" değeri şu aralıkta olabilir: -99 - +1000 (”%” sembolü olmadan);hem "
price_percent
" hem de “price
” girerseniz, yalnızca “price
” parametresi sayılacak ve yüzde göz ardı edilecektir;Long için mevcut fiyattan daha yüksek veya Sell için mevcut fiyattan daha düşük bir fiyat gönderirseniz, emir derhal piyasa fiyatı tarafından gerçekleştirilecektir;
"currency_type"
"quote"
ya da"base"
olarak ayarlanabilir.
“Take Profit”
Botunuzun alınan sinyal ile Kar al emrini vermesini istiyorsanız, bunu JSON mesajınıza ekleyebilirsiniz:
{
...,
"take_profit": {
"enabled": true,
"steps": [
{
"order_type": "limit",
"price_percent": 50,
"volume_percent": 100,
"trailing": {
"enabled": true,
"percent": 0.2
}
}
]
}
}
Mesajın bu bölümü birkaç komuta ayrılmıştır:
"enabled": doğru, - etkinleştirilir, "enabled": yanlış, - kapatılır;
"steps": - Kar alma adımları ekleme olanağı (bu makalede daha ayrıntılı olarak açıklanmıştır);
"order_type": "limit", - limit emir, "order_type": "market", - market emir;
"price_percent": 50, - Kâr al emrini vermek için fiyat sapma yüzdesi;
"volume_percent": 100, - Kar alma emrinin büyüklüğü, yüzde olarak;
"trailing" - Kar al emriniz için trailing etkinleştirebilir ("enabled": doğru,) ve bir sapma ayarlayabilirsiniz ("percent": xx). Trailing take profit özelliği hakkında daha fazla bilgiyi bu makalede okuyabilirsiniz.
Çoklu kar alma hakkında notlar.
Çoklu kar alma, JSON mesajı aracılığıyla maksimum 8 adıma ve Signal bot ayarları arayüzü aracılığıyla yalnızca 4 adıma kadar ayarlanabilir.
"volume_percent" değerlerinin toplamı %100'e eşit olmalıdır!
Trailing özelliği yalnızca son adıma uygulanabilir. "order_type" seçeneğini Limit'ten Market'e değiştirmeyi unutmayın - "order_type": "market".
Çoklu kar alma özelliği hakkında daha fazla bilgiyi bu makalede bulabilirsiniz.
3 kar alma adımı ve son adımda etkinleştirilmiş trailing ile Kar al mesajının bir örneği:
{
...,
"take_profit": {
"enabled": true,
"steps": [
{
"order_type": "limit",
"price_percent": 10,
"volume_percent": 50
},
{
"order_type": "limit",
"price_percent": 20,
"volume_percent": 30
},
{
"order_type": "market",
"price_percent": 30,
"volume_percent": 20,
"trailing": {
"enabled": true,
"percent": 0.2
}
}
]
}
}
JSON mesajındaki bazı parametreler Signal bot ile uyumlu değilse ve bot bunları işleyemiyorsa, sinyal “Reddedildi” durumuna geçebilir.
“Stop Loss”
İşleminize Stop loss emri eklemek istiyorsanız, bu parametreyi JSON mesajına ekleyebilirsiniz:
{
...,
"stop_loss": {
"enabled": true,
"breakeven": true,
"order_type": "market",
"trigger_price_percent": 5,
"trailing": {
"enabled": true,
"percent": 1
},
"timeout": {
"enabled": true,
"value": 120
}
}
}
Mesajın bu bölümü birkaç komuta ayrılmıştır:
"enabled": true, - açık, "enabled": false, - kapalı;
“breakeven” - “true” ise açık, “false” ise kapalı. Yalnızca en az 2 Kar al hedefi belirlediğinizde çalışır. Bu makalede Breakeven özelliği hakkında daha fazla bilgi edinebilirsiniz.
"order_type": "market", - Stop loss sadece bir market emri olabilir;
"trigger_price_percent": 5, - Stop loss emrini yerleştirmek için fiyat sapma yüzdesi;
"trailing" - Stop loss emrinize takip etmeyi (“enabled”: true,) etkinleştirebilir ve bir sapma (“percent”: xx) ayarlayabilirsiniz. Trailing stop loss özelliği hakkında daha fazla bilgiyi bu makalede okuyabilirsiniz.
"timeout" - Stop loss zaman aşımı, saniye cinsinden sayılır. Bu özellik hakkında daha fazla bilgiyi bu makalede okuyabilirsiniz
3 Take profit hedefi ve bir Stop loss belirlemek istiyorsanız JSON mesajının nasıl görünebileceğine dair örnek:
{
"secret": "token",
"tv_exchange": "BINANCE",
"tv_instrument": "BTCUSDT.P",
"action": "enter_long",
"bot_uuid": "signal-bot-uuid",
"order": {
"amount": 100,
"currency_type": "quote",
},
"take_profit": {
"enabled": true,
"steps": [
{
"order_type": "limit",
"price_percent": 10,
"volume_percent": 50
},
{
"order_type": "limit",
"price_percent": 20,
"volume_percent": 30
},
{
"order_type": "market",
"price_percent": 30,
"volume_percent": 20,
"trailing": {
"enabled": true,
"percent": 0.2
}
}
]
},
"stop_loss": {
"enabled": true,
"breakeven": false,
"order_type": "market",
"trigger_price_percent": 5,
"trailing": {
"enabled": true,
"percent": 1
},
"timeout": {
"enabled": false,
"value": 120
}
}
}
Önemli ekleme!
Take profit ve Stop loss parametreleri yalnızca bir pozisyon açılırken işlenebilir! Sinyal bir “add_funds” olarak kabul edilirse, bu parametreler göz ardı edilecektir!
Ek JSON kodları
"enable"/"disable"
Bu eylem Signal botlarını etkinleştirecektir:
{
...
"action": "enable",
...
}
Bu eylem Signal botlarını durduracaktır:
{
...
"action": "disable",
...
}
Kullanım örnekleri.
3Commas hesabınızdaki tüm aktif Signal botlarını durdurun
{
"secret": "xxxxxxxxx.xxxxxxxxxxx.xxxxxxxxxxx",
"max_lag": "300",
"timestamp": "{{timenow}}",
"action": "disable"
}
Belirli borsa hesaplarındaki tüm aktif Signal botlarını durdurun
Bağlı borsa hesabınızın ID'sini bilmeniz gerekecektir - Portföyüm sayfasında gerekli borsayı bulun, 3 noktalı menüye tıklayın, Görüntüle'ye tıklayın ve URL çubuğunda ID'yi göreceksiniz:
1'den fazla borsa hesabı eklemek için, bunları köşeli parantez içine yerleştirmeniz ve virgülle bölmeniz gerekecektir:
{
"secret": "xxxxxxxxx.xxxxxxxxxxx.xxxxxxxxxxx",
"max_lag": "300",
"timestamp": "{{timenow}}",
"action": "disable",
"account_ids": [3345345, 3345347]
}
Bir veya birkaç belirli Signal botunu durdurun
Signal botlarının UUID'sini bilmeniz gerekecektir. Botun yanındaki i butonunun üzerine geldiğinizde UUID'sini göreceksiniz. Eğer birden fazla bot eklemek istiyorsanız, UUID'leri köşeli parantez içinde tırnak işareti ile yazabilir ve virgül ile bölebilirsiniz:
{
"secret": "xxxxxxxxx.xxxxxxxxxxx.xxxxxxxxxxx",
"max_lag": "300",
"timestamp": "{{timenow}}",
"action": "disable",
"bot_uuid": ["xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx", "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx"]
}
Borsa hesaplarınızdaki tüm aktif Long Signal botlarını durdurun
{
"secret": "xxxxxxxxx.xxxxxxxxxxx.xxxxxxxxxxx",
"max_lag": "300",
"timestamp": "{{timenow}}",
"action": "disable",
"scopes": ["long", "real"]
}
Aktif Signal botlarının pozisyonlarını kapatın ve botları durdurun
{
...
"action": "disable",
"positions_sub_action": "market_close"
...
}
Pozisyonu piyasa fiyatından kapatmak istiyorsanız, ek bir satır eklemeniz gerekir:
"positions_sub_action": "market_close"
İşte bir örnek:
{
"secret": "xxxxxxxxx.xxxxxxxxxxx.xxxxxxxxxxx",
"max_lag": "300",
"timestamp": "{{timenow}}",
"action": "disable",
"positions_sub_action": "market_close"
}
Pozisyonu iptal etmek ve daha sonra manuel olarak yönetmek istiyorsanız, şu satırı eklemeniz gerekir:
"positions_sub_action": "cancel"
İşte bir örnek:
{
"secret": "xxxxxxxxx.xxxxxxxxxxx.xxxxxxxxxxx",
"max_lag": "300",
"timestamp": "{{timenow}}",
"action": "disable",
"positions_sub_action": "cancel"
}
Önemli notlar.
Özel sinyal tipi botlarda, Long veya Short pozisyonunu devre dışı bırakma sinyali, sadece bir tarafı değil, botun kendisini de iptal edecektir.
Long veya Short botları ayrı ayrı devre dışı bırakmak istiyorsanız, biri Long stratejili diğeri Short stratejili olmak üzere iki ayrı bot oluşturmanız gerekir.
Farklı parametreler birleştirilebilir ve bir “VE” mantığı ile çalışırlar. Tüm parametreler koşulları karşılıyorsa, sinyal gelecek ve işlenecektir. En az bir parametre karşılanmazsa sinyal reddedilecektir:
Örnek:{
"secret": "xxxxxxxxx.xxxxxxxxxxx.xxxxxxxxxxx",
"max_lag": "300",
"timestamp": "{{timenow}}",
"action": "disable",
"scopes": ["long", "real"],
"account_ids": [1, 2, 3]
}
SSS
Bir Bitcoin grafiğinden farklı bir pariteye sinyal göndermek mümkün mü?
Kesinlikle. Bunu yapmak için, JSON mesajı içindeki tv_instrument
ve tv_exchange
placeholderları manuel olarak değiştirmeniz yeterlidir. Pariteler için kullanılan formata dikkat etmek önemlidir.
Örneğin:
BTCUSDT:OKX
- OKX'te spot parite. (BTC/USDT
3Commas Kullanıcı Arayüzü)
BTCUSDT.P:OKX
- OKX'te perpetual linear futures. (BTC-USDT-SWAP/USDT
3Commas Kullanıcı Arayüzü)
BTCUSD.P:OKX
- OKX'te perpetual inverse futures (BTC-USD-SWAP/BTC
3Commas Kullanıcı Arayüzü)
İşte orijinal JSON mesajının bir kısmının nasıl göründüğüne dair bir örnek:
{ ... "tv_exchange": "{{exchange}}", "tv_instrument": "{{ticker}}" ... }
Ve bunu nasıl değiştirebileceğiniz:
{ ... "tv_exchange": "OKX", "tv_instrument": "1INCHUSDT.P" ... }
Bu değişiklikleri yaptığınızda, sinyal 3Commas üzerindeki 1INCH-USDT-SWAP/USDT
paritesine uygulanacaktır. Doğruluğu sağlamak için parite formatını iki kez kontrol etmeyi unutmayın.