FPI - Fractional Product Inefficiency: The Impeccable Hedge
Moderator: moderators
- Nicholishen
- rank: 50+ posts
- Posts: 52
- Joined: Thu Oct 26, 2006 8:44 am
- Reputation: 0
- Real name: Nick
- Gender:
Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.
Thank you for your support.
- TheEconomist
- rank: <50 posts
- Posts: 22
- Joined: Thu Nov 02, 2006 7:13 pm
- Reputation: 0
- Gender:
Ok guys, I give up. I don't have the supreme truth...
Perhaps I made some mistakes calculating ROA and ROE...
Check out this script and tell me about... I'd like to find out that I'm wrong and there are money to be made with the swaps.
Put bclib.mq4 (with the new one) in your include directory (or replace the one that you have)
Put the SwapFinder in the script directory.
Adjust the Appendix if you don't have "m" appended at the end of the contracts.
Make sure all the currencies the broker works with are present in the UsableCurrencies array, the script will figure out the pairs by itself.
Run and try to enjoy...
And please tell me I made a mistake and the "best ring" is rockin'...
Perhaps I made some mistakes calculating ROA and ROE...
Check out this script and tell me about... I'd like to find out that I'm wrong and there are money to be made with the swaps.
Put bclib.mq4 (with the new one) in your include directory (or replace the one that you have)
Put the SwapFinder in the script directory.
Adjust the Appendix if you don't have "m" appended at the end of the contracts.
Make sure all the currencies the broker works with are present in the UsableCurrencies array, the script will figure out the pairs by itself.
Run and try to enjoy...
And please tell me I made a mistake and the "best ring" is rockin'...
- Attachments
-
- SwapFinder.zip
- (18.27 KiB) Downloaded 423 times
- TheEconomist
- rank: <50 posts
- Posts: 22
- Joined: Thu Nov 02, 2006 7:13 pm
- Reputation: 0
- Gender:
EFX Spreads
Hello,
The problem that I have with using EFX as a broker for FPI is the spreads!
Sounds ridiculous doesn't it, because EFX is an ECN broker with low spreads. Let me explain.
I used the SDK from MB Trading to collect data on FPI opportunities.
I found that my entries are hit with low spreads and low slippage.
The problem comes with the exits.
Example from last night:
Ring: (AUDJPY AUDUSD USDJPY)
Direction: BSS
Entry/Exit Spread: 0.0004
Entry FPI: 1
Exit FPI: 0.999
Here are the spreads for this ring when the FPI was at levels
that profit could be made. The spread is the combined ring spread.
Local Time / Ring Spread / FPI
12/12/2006 22:35, 0.0026, 0.9987
12/12/2006 22:35, 0.0027, 0.9987
12/12/2006 22:35, 0.0027, 0.9987
12/12/2006 22:35, 0.0026, 0.9988
12/12/2006 22:35, 0.0026, 0.9988
12/12/2006 22:35, 0.0025, 0.9988
12/12/2006 23:35, 0.0025, 0.9983
12/12/2006 23:35, 0.0038, 0.9983
12/12/2006 23:35, 0.0038, 0.9983
12/12/2006 23:35, 0.0038, 0.9983
12/12/2006 23:35, 0.0038, 0.9983
So for an average daily spread of 4 pips, it rises to 25-38pips when you want to exit.
This is the same for all of the rings that I collected data for.
I have attached a spreadsheet of the sample data.
The data collected was for FPI <= 0.9990 Or FPI >= 1.0010
If anyone has any suggestions, please let me know.
Thanks,
Coder
The problem that I have with using EFX as a broker for FPI is the spreads!
Sounds ridiculous doesn't it, because EFX is an ECN broker with low spreads. Let me explain.
I used the SDK from MB Trading to collect data on FPI opportunities.
I found that my entries are hit with low spreads and low slippage.
The problem comes with the exits.
Example from last night:
Ring: (AUDJPY AUDUSD USDJPY)
Direction: BSS
Entry/Exit Spread: 0.0004
Entry FPI: 1
Exit FPI: 0.999
Here are the spreads for this ring when the FPI was at levels
that profit could be made. The spread is the combined ring spread.
Local Time / Ring Spread / FPI
12/12/2006 22:35, 0.0026, 0.9987
12/12/2006 22:35, 0.0027, 0.9987
12/12/2006 22:35, 0.0027, 0.9987
12/12/2006 22:35, 0.0026, 0.9988
12/12/2006 22:35, 0.0026, 0.9988
12/12/2006 22:35, 0.0025, 0.9988
12/12/2006 23:35, 0.0025, 0.9983
12/12/2006 23:35, 0.0038, 0.9983
12/12/2006 23:35, 0.0038, 0.9983
12/12/2006 23:35, 0.0038, 0.9983
12/12/2006 23:35, 0.0038, 0.9983
So for an average daily spread of 4 pips, it rises to 25-38pips when you want to exit.
This is the same for all of the rings that I collected data for.
I have attached a spreadsheet of the sample data.
The data collected was for FPI <= 0.9990 Or FPI >= 1.0010
If anyone has any suggestions, please let me know.
Thanks,
Coder
- Attachments
-
- Spread.xls
- (244.5 KiB) Downloaded 310 times
FPI -> $ value
Hello,
The only way that I can see to convert FPI to a $ amount is to
add the P/L of the three trades together.
If you didn't want to actually enter the trades, just monitor the values,
you could get the bid ask prices when the FPI is 1, then using these values, calculate the P/L based on the last price.
The aim is to see how much $ variation there is between a high & low FPI.
I'm going to do this tonight, then I will post the results tomorrow.
The rings that I'm following are:
AUDJPY AUDUSD USDJPY BSS
EURUSD EURAUD AUDUSD BSS
USDJPY USDCAD CADJPY BSS
EURCAD EURUSD USDCAD BSS
NZDJPY NZDUSD USDJPY BSS
AUDJPY AUDUSD USDJPY SBB
EURUSD EURAUD AUDUSD SBB
EURJPY EURCAD CADJPY SBB
USDJPY USDCAD CADJPY SBB
EURJPY EURUSD USDJPY SBB
NZDJPY NZDUSD USDJPY SBB
I have attached a VB6 code module to show how I calculate the P/L of
a currency pair.
Nicholishen, thank you very much for your assistance with my above
post.
Coder
The only way that I can see to convert FPI to a $ amount is to
add the P/L of the three trades together.
If you didn't want to actually enter the trades, just monitor the values,
you could get the bid ask prices when the FPI is 1, then using these values, calculate the P/L based on the last price.
The aim is to see how much $ variation there is between a high & low FPI.
I'm going to do this tonight, then I will post the results tomorrow.
The rings that I'm following are:
AUDJPY AUDUSD USDJPY BSS
EURUSD EURAUD AUDUSD BSS
USDJPY USDCAD CADJPY BSS
EURCAD EURUSD USDCAD BSS
NZDJPY NZDUSD USDJPY BSS
AUDJPY AUDUSD USDJPY SBB
EURUSD EURAUD AUDUSD SBB
EURJPY EURCAD CADJPY SBB
USDJPY USDCAD CADJPY SBB
EURJPY EURUSD USDJPY SBB
NZDJPY NZDUSD USDJPY SBB
I have attached a VB6 code module to show how I calculate the P/L of
a currency pair.
Nicholishen, thank you very much for your assistance with my above
post.
Coder
- Attachments
-
- modProfitLoss.zip
- (1.26 KiB) Downloaded 320 times
Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.
Thank you for your support.
- TheEconomist
- rank: <50 posts
- Posts: 22
- Joined: Thu Nov 02, 2006 7:13 pm
- Reputation: 0
- Gender:
So many people downloaded the SwapFinder, guess it's up to me to announce I repaired it (works for InterbankFX and FXDD) in collaboration with a team of traders around here.
Use it carefully (we don't know yet how good it is) (especially on FXDD, no rings on InterbankFX, sadly) these swap points are fluctuating...
Use it carefully (we don't know yet how good it is) (especially on FXDD, no rings on InterbankFX, sadly) these swap points are fluctuating...
- Attachments
-
- RepairedSwapFinder.zip
- (19.73 KiB) Downloaded 380 times
- TheEconomist
- rank: <50 posts
- Posts: 22
- Joined: Thu Nov 02, 2006 7:13 pm
- Reputation: 0
- Gender:
-
- rank: <50 posts
- Posts: 7
- Joined: Thu Nov 16, 2006 9:32 am
- Reputation: 0
- Location: Alaska
- Gender:
- Contact:
OK, after two weeks of demo trading FPI, it looks pretty positive.
The EA only trades rings with positive SWAP.
I have limited the EA to open only two rings at a time now.
Results are positive so far. Not stellar, but low to no risk profit.
The EA only trades rings with positive SWAP.
I have limited the EA to open only two rings at a time now.
Results are positive so far. Not stellar, but low to no risk profit.
- Attachments
-
- Here is the demo account graph.
- FPI.gif (5.43 KiB) Viewed 4483 times
-
- FPI.zip
- Here is the statement as of the last two weeks of trading. Max Draw Down on the account has been under 8%.
- (3.12 KiB) Downloaded 324 times
"correct the if condition on line 683 to
if (OrdersTotal()!=0||JustTesting==True)"
I'v done this and what I'v got when I tried to compile SwapFinder_script.mq4 and BcLib.mq4.
Any suggestions?
Thanks
if (OrdersTotal()!=0||JustTesting==True)"
I'v done this and what I'v got when I tried to compile SwapFinder_script.mq4 and BcLib.mq4.
Any suggestions?
Thanks
- Attachments
-
- BcLib.mq4.rar
- (58.2 KiB) Downloaded 245 times
-
- SwapFinder_script.mq4.rar
- (44.3 KiB) Downloaded 236 times
- TheEconomist
- rank: <50 posts
- Posts: 22
- Joined: Thu Nov 02, 2006 7:13 pm
- Reputation: 0
- Gender:
I don't have mt4 available here when I write these lines...
You must have build 200 to compile these (i don't think it works with something older)
Now: this is the program block I meant:
if (OrdersTotal()!=0||JustTesting==True)
mb=SplashScreen();
else
{
if (bestconfig!=-1)
{
SplashLn("");
SplashLn("Trade ring ?");
mb=SplashScreen(MB_YESNO);
if (mb==IDYES)
{
TradeRing(crrcies,Ops,Contracts,Volumes,;
GetMaxMagic()+1);
}
}
}
So: if we don't have any trades for the moment or we're JustTesting , the program will display last screen (the one with the best ring - if no such ring, the window will be empty).
If we have trades OR we're not JustTesting, and of course, we have a best ring, we will be asked if we wanna trade the best ring found.
You will get serious errors if you set JustTesting to true after a ring is already traded, because when JustTesting is set to true EstablishRing will use AccountEquity() instead of AccountFreeMargin() and will propose a ring that will use entire equity , weighted by MarginUsage, and that ring won't be able to be executed (you already have funds in the current ring).
However, my advice is: FORGET IT!
It doesn't work. There are rings on FXDD. But they change. It may be the best ring when you take it, yet have negative spread at the witched hour... Seems fx rates have a large impact on swaps, not just marginal, as I thought. So positive swap rings are a lost cause...
I will try to repair another script that tries to generate rings with a somewhat modified FPI concept. But don't rely on this.
You must have build 200 to compile these (i don't think it works with something older)
Now: this is the program block I meant:
if (OrdersTotal()!=0||JustTesting==True)
mb=SplashScreen();
else
{
if (bestconfig!=-1)
{
SplashLn("");
SplashLn("Trade ring ?");
mb=SplashScreen(MB_YESNO);
if (mb==IDYES)
{
TradeRing(crrcies,Ops,Contracts,Volumes,;
GetMaxMagic()+1);
}
}
}
So: if we don't have any trades for the moment or we're JustTesting , the program will display last screen (the one with the best ring - if no such ring, the window will be empty).
If we have trades OR we're not JustTesting, and of course, we have a best ring, we will be asked if we wanna trade the best ring found.
You will get serious errors if you set JustTesting to true after a ring is already traded, because when JustTesting is set to true EstablishRing will use AccountEquity() instead of AccountFreeMargin() and will propose a ring that will use entire equity , weighted by MarginUsage, and that ring won't be able to be executed (you already have funds in the current ring).
However, my advice is: FORGET IT!
It doesn't work. There are rings on FXDD. But they change. It may be the best ring when you take it, yet have negative spread at the witched hour... Seems fx rates have a large impact on swaps, not just marginal, as I thought. So positive swap rings are a lost cause...
I will try to repair another script that tries to generate rings with a somewhat modified FPI concept. But don't rely on this.
Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.
Thank you for your support.