There’s a golden rule that you should ALWAYS follow while making money online:
Automate as much tasks as possible.
This is true especially if you’re doing boring and repetitive tasks that eat up a lot of time. It helps a lot if you are able to do little programming, but in this case you don’t need to.
I wrote a Bitfinex PHP bot for you that will auto lend your USD based on current market situation.
You need to have a web hosting with Cron that allows your script to run periodically.
I use Amazon AWS for most of my projects that aren’t location specific. But you can use any available web hosting that supports PHP and Cron.
Just download the bot and copy it to the FTP directory on your hosting.
Once it’s done make sure you can run the script by opening in your browser:
If it throws Bitfinex related error then it’s working, if not, let your hosting customer support help you.
Go to Bitfinex API management page and generate your API key.
Copy both keys and paste it to the bot’s config.php into their appropriate place.
You can change other options as well, but these are well tested and give me best results.
Run the script from your browser and make sure you see any of the following messages:
- "XXX USD lent for 2 days at daily rate of Y%. Offer id Z."
- "Balance of XX USD is not enough to lend."
In case of the latter make sure there are minimum funds of $50 to offer swaps.
The last think to do is setting up a cron task that will run the script periodically.
I run it on every 1 hour at 30 minutes (11:30AM, 12:30PM, 1:30PM etc), but the minute part is not really that important. In my case, the cron setting would be:
30 * * * * /path/to/script/lend.php
Feel free to use different settings as explained on my GitHub page
If you’re not able to run the script for some reason don’t worry. You can still do those tasks manually though it will eat up anywhere from several minutes to hours a day.
Know the market
The good part about Bitfinex swaps is that you can’t lose. But you should aim for more than just average results.
That’s why it’s necessary to know what you’re doing and why you’re doing it.
It took me several weeks of trial and error until I found the best working method for me. You may have better results with your own methods, though.
Find the best rate
The first thing you should do is to look at the USD Swap offers table. It tells you everything about your competition offers.
There are several different columns, but what you really care about is "Total N. of Swap Contracts" and "Rate (% per day)".
It tells you how much money is offered to bitcoin speculators and what rate it is lent for.
What you want to do is to offer your USD cheaper than most of the people to make sure you will lend your money ASAP. But being too cheap drives rates down because others want to do the same.
I’m using what I call a "25 edge" method to determine the rate to lend my money for. It means I will create an offer with a rate based on the closest rate to a number of 25 000 swap contracts (I know I was always bad at explaining).
Take the next picture as an example.
The highest closest number of swaps to 25 000 is 33534.56 for a daily rate of 0.108% and the lowest closest number is 24299.62 for 0.105%.
Do you see the gap between 0.108 and 0.105%? This is the range that is of my interest.
Because Bitfinex uses a number precision of up to 4 decimals, the closest rate to the maximum number of this range is 0.1079% - the daily rate I’m looking for.
I found out, that even the market goes down, your orders might stay open if your lending period is 7 days and higher. This will bring more money when everyone is lending for much less at the time.
But there’s nothing worse than locking your money for a long period of time if the market is growing.
Imagine lending USD for 30 days for a daily rate of 0.05% while everyone else is lending for 0.2%.
You can be 100% sure your cheap order will not close sooner than its supposed expiry date.
For this reason, I always lend for the lowest period possible which is 2 days.
Sure, my orders might prematurely close which means I have to spend more time on Bitfinex, but at least I’m flexible enough on unexceptional market grows.
In order to be as flexible as possible, you need to know when your orders close.
Bitfinex will send you an email in such case, but you need to enable it with every offer made because it’s not turned on by default. As annoying as it gets, it will save you lot of troubles (and a lot of time).
Just click "Options" on "Offer Swap" tab and make sure "Notify when offer is taken" is ticked.
If you’ve already made an offer without requesting the notification, open "Swaps currently provided" or "Unfilled swap demand/offers" table respectively and hit the "Notify All" button.
Cancel unused offers
Other part of being flexible is to cancel offers that weren’t taken for some time to create a new offer based on the market.
The bot takes care of this automatically if the offer wasn’t taken in last 50 minutes. But you’re not a bot and checking regularly will eat up a lot of time so anywhere between 2-3 hours should be fine.
If the order doesn’t get executed in few hours, it’s safe to suggest that the market has changed and you might wait 10 or more hours until it does so.
It’s always better to actually lend $1000 for 0.08% than wait 3 days for $1000 to be lent for 0.2% and make 0 for that period of time.
Bitfinex uses an affiliate program called "representative account". It allows you to get provisions off transactions of people that used your code to register.
The weird thing is, there’s not a single mention of it anywhere on their site. You need to apply by email.
If you get your representative account enabled you will find a new page under your account. It looks like this:
There are tons of different methods to share your links, so I won’t go into details. Figure it out on your own.
After you get your first referrals, you will see money coming into your trading wallet. Be sure to move these funds to your deposit wallet so they can become part of your swap offers.
Even if it’s just a couple of cents, never underestimate the power the compound interest.
As mentioned earlier, always automate your recurring tasks so you can focus on other things that might bring more cash flow.
If you, for whatever excuse, can’t run the bot be sure to test your results for several weeks.
Though I found my technique to be very effective, take it as a framework only.
Your own approach might work better based on the amount of money you poured into it and time you can afford to spend for it.
Let me know in the comments section if you run into any issues. I would also like to hear about techniques that work for you.