A community for trading strategies, indicators, and utilities developed with HaasScript.
Join for Free Browse Scripts![HaasOnline TradeServer with HaasScript HaasOnline TradeServer with HaasScript](/wp-content/themes/haas-scripts/img/yes3.png)
HaasOnline’s purpose is to help more people gain control of their financial freedom as the new age of finance evolves. As a trusted partner to investors and a leading provider of financial technology, our customers look to us for the solutions they need when designing and executing on their most important trading strategies.
Log('Tip wallet ERC20: 0xaa28dE4372CA0a8BC36722886E9749f70DF32382') EnableHighSpeedUpdates(true) HideOrderSettings() HideTradeAmountSettings() -- Always start with ALL Trade Settings options UN-TICKED to let the bot preparing values. -- Test with default values before changing anything to understand the bot. -- PAY ATTENTION to the log warning if you feel something is off before screeamin...
- COMPATIBLE with server and cloud version. - Optimized for HEDGE mode. - Suggested main interval is 1H - Always start with ALL Trade Settings options UN-TICKED to let the bot prepare values. - Test with default values before changing anything to understand the bot.…
— Author – Strooth – Find me on discord – strooth#4739 — Feel free to donate to support my work or if my script helped you in any way <3 — BTC Adress: 33MsEAbA8tg7SpohgnCpSrmPTBih2UkhxQ — InputGroupHeader('Main') local allowshort = Input('Enable Short', true, 'Enable short positions') local allowlong = Input('Enable Long', true, 'Enable long positions') local allowshortx = ...
Basic bot/template for managing multiple positions and single order per position with stoploss and take profit Get a signal from where ever you like either from another script or remote signal and it will manage multiple positions both long and short. Requires my other custom…
-- Author: Giankam DefineCommand('NQK', 'Nadaraya Quadratic Kernel') local function kernel_regression (_src, _alpha, _r, _h) local _currentWeight = 0 local _cumulativeWeight = 0 for i = 1, _alpha + 26 do local y = _src[i] local w = Pow( 1 + (Pow(i, 2) / (Pow(_h, 2) * 2 * _r )), -_r) _currentWeight = _currentWeight + (y*w) _cumulativeWeight...
This is an envelope implementation of non-repainting Nadaraya-Watson indicator using the Rational Quadratic Kernel: Nadaraya-Watson What is Nadaraya–Watson Regression? Nadaraya–Watson Regression is a type of Kernel Regression, which is a non-parametric method for estimating the curve of best fit for a dataset. Unlike Linear Regression…
-- Module: Bot Template -- Name: Spot Bot (Base Bot) -- Author: romdisc -- Date: 04/09/2024 -- Update: 04/09/2024 -- Description -- =========== -- -- Implements a simple high speed bot for spot market trading -- -- Instantiation : local bot = CC_SpotBot('name of bot') -- -- implement these functions (all of them are optional): -- bot.inputs = function(bot_name) r...
Hi, once again me, HaHa. I like you to inspire your thinking what is possible with HaasScript. I like modularizing code as much as much as I can, as a Software Developer and so I do it with HaasScripts. I developed a Spot Market Trading…
-- [pshaiBot] Triangle-Arbitrage, PROOF-OF-CONCEPT -- Author: pshai --[[ -- WARNING, PLEASE READ -- This bot executes trades based on estimations and on the assumption that prices do not change when orders are sent out! Please do not use this bot for actual trading, unless you want to prove to yourself that this type of trading IS NOT profitable! ]] EnableHighSpe...
Hey fellas! Here is an actual trading tri-arb bot. However, I don't have much else to say than this: -- WARNING, PLEASE READ -- This bot executes trades based on estimations and on the assumption that prices do not change when orders are sent out!…
--If you would like to buy me a cup of coffee or diamond: --ENS: smokyho.eth EnableHighSpeedUpdates() HideTradeAmountSettings() -- Inputfields InputGroupHeader('Bot Settings') local startingBalance = Input('Starting Balance '..ProfitLabel(), 0) local startingAmount = Input('Starting exposure '..AmountLabel(), 1) local amountFactor = Input('Trade amount facto...
My modification for Haasonline's original Zone Recovery Bot for HEDGE trading mode. The bot use balance ratio as stop loss and not position size like the original bot. "Closing all positions when working balance (total used margin - total unrealized profit) / bot balance (starting…
-- [pshaiTool] Buy & Sell buttons -- Author: pshai if not init then EnableHighSpeedUpdates(true) HideTradeAmountSettings() HideOrderSettings() order_size_types = { 'Base', 'Quote', '% of Total Wallet', '% of Available Wallet', } lpid = NewGuid() spid = NewGuid() init = true end local order_size = Input('Ord...
From GPT: The [pshaiTool] Buy & Sell buttons script is an advanced trading tool designed to streamline the process of executing buy and sell orders directly from a trading platform interface. Created by pshai, this tool enhances user experience by providing a simplified, high-speed method…
-- Potentially very counter-intuitive trading strategy -- Author: pshai ma_len = Input('MA Length', 13) ma_type = InputMaTypes('MA Type', EmaType) bb_len = Input('BB Length', 3) bb_dev = Input('BB Deviation', 2) bb_type = InputMaTypes('BB Type', EmaType) bw_thres = Input('BBand Width Threshold %', 0.7) / 100 cci_len = Input('CCI Length', 50) cci_br = Input('CCI Base Range', 100) cci_ar...
Hey folks! In search of dynamic and counter-intuitive (but smart) trading strategies, I happened to create this. It's a bi!@$ to finetune... But it looks good on the charts. :pepeshrug: Let me know if you want to see a full bot using this strategy! ~May…
DefineCommand('VPCI_Signal', 'Signal generation using Volume Price Confirmation Indicator (VPCI) with Plots and Highlight Breaches') -- Define parameters and inputs local name = DefineParameter(StringType, 'name', 'Unique name of the indicator.', false, 'VPCI_Indicator', 'Text') local chartIndex = DefineParameter(NumberType, 'chartIndex', 'The index on which to chart', false, 6, 'Number') ...
Signal generation using Volume Price Confirmation Indicator (VPCI) with Plots and Highlight Breaches' Developed by Buff Dormeier, VPCI won 2007 Charles H Dow award by the MTA. VPCI plots the relationship between price trend and the volume, as either being in a state of confirmation…
DefineCommand("GetOrderbookImpact", "Calculates the impact on orderbook based on trade amount, returns the price impact in percentages.") local tradeAmount = DefineParameter(NumberType, 'tradeAmount', 'The trade amount to calculate with. Default is TradeAmount()', false, TradeAmount(), 'TradeAmount, MaxLongAmount, MaxShortAmount, LongAmount, ShortAmount') local isLong = DefineParameter(Boolean...
Found another one... Old script, never got published anywhere iinm. The command simply "Calculates the impact on orderbook based on trade amount, returns the price impact in percentages." Hope you find good use for it! ~pshai
NobwRAGmBcBsAsAGANGAmjATJlYDqMuAEoagOICuAlgCYz7wCMATgFIDmRAdgFYByXAMYAjAMoBOAEIBZGgGsAZgGcwqACoBPAA4BTGI0SJGqAMIB7ALYWAhlxp9rFvdDB8dANx3MAogA8qAC54gQAWADJmSiqmZlxcOoIBZsww4JS09GHwcgDSACKi1gCq7ADuEACOeewA8iZKAKwmsBSqYOZxCQFUsSrQwAC6qAAK1syOOgFeqa4T9Dq+CRRTbZq6MADMqACSSgBKOhXUzDp00ArWADZKOjtKRLQ0OlwwF9e3YLsAYlQ6l2dvG6oACCl0uZlKfAoYNeVyBYDyOiUgmYVC03Vi9Daogo7HYSIxL36G0wjEwyBJBgpOC2JMQsGpjGMGw2hmpiHJd...
StopLossCooldown OvercomeFeeCosts NoLoss set 0 what you don't use.
NobwRAGmBcBMAMAaMBNGBGByDqMlgAk9kBxAVwEsATGMAIQBsUAHAFQEUBJAaQAsqGAdgBiARwBa2XhXEBnWWGSsAnswCmMAGzx0yAMIB7ALZGAhgDsqAOVNGN0MABE1AMwrm1hkxZr6D5jwBjABcDACcYcHJqWl4CPW4CNVgAdwB5SwAvACMAVlMAK3Ng81MGRTBDALUQin8FaGAAXWQABVMw2zVgtQjocBs7WjUADxqyHoqVdRgAZmROWQAlNVFKMLUaaBcy2TUF2QJqKjVzGB2GPYPhCjUGLYursABBBgYDFKsyN/Pd/ac1LJAmEKMxgnUzg4KgBlMgAczhgPB/hgwFmsEwiHR6CQ6Pg8zxmixGN0s1m8FxCFgxPguRpAE4aQAWRBMgAc+NZH...
InsuredMH: StopLossCooldown + OvercomeDoubleFeeCosts
-- [pshaiCmd] Get Dynamic Trade Amount -- Author: pshai DefineCommand('GetDynamicTradeAmount', 'Get dynamic trade amount, margin or notional size based on inputs.') local acceptable_loss = DefineParameter( NumberType, 'acceptable_loss', 'The acceptable loss amount.', true, 100, 'Input' ) local entry_price = DefineParameter( ...
Hey fellas! This CC is based on the example I shared here: Usage: local acceptable_loss = 100 -- USDT local entry_price = CurrentPrice().ask -- we buy the ask price local stop_loss_price = SubPerc(entry_price) local trade_amount = CC_GetDynamicTradeAmount(acceptable_loss, entry_price, stop_loss_price) local margin_amount = CC_GetDynamicTradeAmount(acceptable_loss, entry_price, stop_loss_price,…
-- Position sizing based on pre-determined (acceptable) loss & stop-loss size -- Author: pshai label1 = AmountCurrency() label2 = MarketType() == SpotTrading and QuoteCurrency() or UnderlyingAsset() label3 = QuoteCurrency() if not init then -- let's imagine a USDT based market and we are buying or entering long -- parameters: acceptable_loss = 100 -- USDT entry_price =...
Hey fellas! Here is an example code snippet to demonstrate how you can calculate your position size based on acceptable loss amount and your stop-loss size. You can test this code by running a backtest on the market of your choice, it will run 2…
-- [pshaiCmd] Trailing Arm Stop-Loss (TASL) ---- TrailBlaze Author: Giankam --- modified TrailBlazeArmStopLoss by @Criptics DefineCommand('TrailBlazeArmStopLoss', 'Educational TASL') InputGroupHeader('TBA_StopLoss Settings ') local arm = DefineParameter(NumberType, 'arm', 'Activation distance in percentage. Default is 0.2%.', false, Input('Arm', 1.5), 'Number') local atrLength = Defin...
TrailBlazeArm Stop-Loss (TBASL) Overview The TrailBlazeArm Stop-Loss (TBASL) is an advanced trading script designed to help traders protect their positions by dynamically adjusting stop-loss levels based on market conditions. This script, originally authored by Giankam and modified by @Criptics, combines several market indicators to calculate…
-- Switch-case implementation for HaasScript -- Author: pshai function switch(args) local t = args.select local rf = args.run_funcs or false for c, r in pairs(args.cases) do if t == c then if rf and GetType(r) == FunctionDataType then return r() end return r end end end...
Any potential updates or changes can be found in HaasOnline Discord server. Here's my implementation for a switch-case system. Usage: local c = ClosePrices() local len = 20 local indicator = 'sma' local values = switch({ select = indicator, run_funcs = true, cases = {…
-- Modified by Strvninmarvin on 2021-11-02 -- ============================================================================ -- Strvinmarvin's ReportMaxMargin -- -- Adds a custom report on your maximum margin used. -- -- * Note: Thanks to Firetron, for I have shamelessly ripped off his ReportMaxRiskPoint -- command and used the template and framework to make this. ...
Adds a custom report on your maximum margin used.
DefineCommand('Volatility_Trader_Tools', '[Kobalt] Volatility_Trader_Tools (VOLTT) Keltner Channel based ATR Bands, StdDeviation BBands VWAP bands (the big 3) added ATR as oscillator to confirm the exhaustion points(reversal best dip, peak)') local pIsBt = DefineParameter(BooleanType, 'isBacktestt', '', true, true) local pPlotIndex = DefineParameter(NumberType, 'index to plot', 'For ATR sub ch...
Add MFA to Max Draw Down/MAE for back testing/reports What does MFE mean? MFE stands for Maximum Favorable Excursion. MFE marks the highest price during a long trade and the lowest price during a short trade. This shows you what the highest profit was during…