FPI - Fractional Product Inefficiency: The Impeccable Hedge

NeoTicker indicators

Moderator: moderators

User avatar
michal.kreslik
rank: 1000+ posts
rank: 1000+ posts
Posts: 1032
Joined: Sat May 13, 2006 2:40 am
Reputation: 0
Location: Monte Carlo, Monaco
Real name: Michal Kreslik
Gender: Male
Contact:

Re: Possible Fix

Postby michal.kreslik » Wed Oct 18, 2006 4:02 pm

Luke wrote:
michal.kreslik wrote:
Bharat, it shouldn't depend on the symbols to be lined up in an alphabetical order. In fact, FPI Control Panel sorts any set of symbols automatically and ignores repeated symbols and non-Forex symbols.


In the method ExtractSymbolsFromChart, the 4th parameter: bool sort = false (always)
I don't think it is sorting like it should

line 122 KToolsNeo.cs


That line is OK, it extracts all symbols from a chart without sorting them. The Control Panel then compares this set of symbols with the previous set of symbols on chart.

Michal

Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.

ryan
rank: <50 posts
rank: <50 posts
Posts: 24
Joined: Wed Oct 18, 2006 9:57 am
Reputation: 0
Gender: Male
Contact:

Re: Don;t fall into the trap!

Postby ryan » Wed Oct 18, 2006 4:05 pm

michal.kreslik wrote:Obviously, in order to find out the true FPI value, we have to use the ask price for every FX symbol that is bought in the ring and the bid price for every FX symbol that is sold short.


Michal, please excuse this question as I am still learning, but can we not derive a Bid/Ask price from say the Open of historical data if we want to do some manual backtesting?

ie, Sell @ Open, Buy @ Open+Spread?

Ryan

User avatar
michal.kreslik
rank: 1000+ posts
rank: 1000+ posts
Posts: 1032
Joined: Sat May 13, 2006 2:40 am
Reputation: 0
Location: Monte Carlo, Monaco
Real name: Michal Kreslik
Gender: Male
Contact:

Re: Issues with FPI

Postby michal.kreslik » Wed Oct 18, 2006 4:11 pm

trader_hal wrote:Hi watzdorf, read my posts on the 1st, 2nd page.. i have discussed this issue with michal. I am stumped for now.. on this.


I'm running the FPI Control Panel ver. 1.71 on NeoTicker 4.10 build 45 and it works.

Are you able to load the FPI Control Panel source into Visual Studio 2005 Pro and run it as a DLL project? You should setup the "Debug" tab in the NeoFPI project in Visual Studio like this:



You may then debug the FPI Control Panel be placing the breakpoints into the DLL code.

Michal

User avatar
michal.kreslik
rank: 1000+ posts
rank: 1000+ posts
Posts: 1032
Joined: Sat May 13, 2006 2:40 am
Reputation: 0
Location: Monte Carlo, Monaco
Real name: Michal Kreslik
Gender: Male
Contact:

Re: Don;t fall into the trap!

Postby michal.kreslik » Wed Oct 18, 2006 4:20 pm

ryan wrote:Michal, please excuse this question as I am still learning, but can we not derive a Bid/Ask price from say the Open of historical data if we want to do some manual backtesting?

ie, Sell @ Open, Buy @ Open+Spread?

Ryan


Ryan,

open price has actually nothing to do with either the Bid price or Ask price if we don't know whether the open price is either a Bid or an Ask.

I've got a reliable database of Tradestation historical data and it provides only Bid prices.

I can easily reconstruct the Ask prices from say EUR/USD Bid prices if I know the average spread in EUR/USD is 3 points. Then I simply add 3 points to every Bid price.

Certainly, this won't mimic the exact market behavior since the spread does fluctuate in time, but it will be closer to reality than with using just single (Bid) prices.

Michal

User avatar
michal.kreslik
rank: 1000+ posts
rank: 1000+ posts
Posts: 1032
Joined: Sat May 13, 2006 2:40 am
Reputation: 0
Location: Monte Carlo, Monaco
Real name: Michal Kreslik
Gender: Male
Contact:

Postby michal.kreslik » Wed Oct 18, 2006 4:36 pm

trevman wrote:if this can be brought into metatrader successfully then surely it can be programmed to auto trade. however something i looked into a while ago was to open trades in order to offset each other such as

BUY GBP/JPY
SELL GBP/USD
SELL USD/JPY

i tried to do this manually but found i was left exposed on the JPY, i don't know if it would be possible to do this without any exposure or not but the idea is to do it in order to recieve positive total interest on the open positions.


If you have found yourself exposed on any of the involved pairs, i.e. either gaining or losing consistently without the typical FPI-like oscillation, then you didn't open the positions with the same position size for the individual currencies.

Correctly open Impeccable Hedge oscillates above slightly negative profit equal to the spread sum.

Michal

Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.

User avatar
michal.kreslik
rank: 1000+ posts
rank: 1000+ posts
Posts: 1032
Joined: Sat May 13, 2006 2:40 am
Reputation: 0
Location: Monte Carlo, Monaco
Real name: Michal Kreslik
Gender: Male
Contact:

Re: How many pips are on the table and how to collect them.

Postby michal.kreslik » Wed Oct 18, 2006 4:40 pm

apfx wrote:But the unclear issue to me still remains which trade model to use based on FPI reading:

1. Buy, Sell, Sell
or
2. Sell, Buy, Buy
or
3. ?????


It doesn't matter which way the Impeccable Hedge's positions are open as long as they are open in the right relative directions.

So the Buy, Sell, Sell and the Sell, Buy, Buy variants should be yielding approximately the same results.

Michal

User avatar
michal.kreslik
rank: 1000+ posts
rank: 1000+ posts
Posts: 1032
Joined: Sat May 13, 2006 2:40 am
Reputation: 0
Location: Monte Carlo, Monaco
Real name: Michal Kreslik
Gender: Male
Contact:

Re: Calculation of Impecable Hedge

Postby michal.kreslik » Wed Oct 18, 2006 5:05 pm

silverpike wrote:
apfx wrote:If you sell short 100,000 EUR/JPY and buy 100,000 EUR/USD you have sold and bought the same ammount of EUR.

If you buy 100,000 EUR/USD and buy 100,000 USD/JPY you have sold
126,485 USD and bought 100,000 USD. There are 26,485 USD not hedged

shouldn't you buy 126,485 USD/JPY instead of 100,000?

Yes, I believe this is correct. It is probably a typo by Michal.


Sure, that was a typo by me. I have been writing that post deep in the night :)

Obviously, one should always be hedging the individual currencies one unit for one, otherwise it's not a hedge.
Michal

User avatar
trader_hal
rank: <50 posts
rank: <50 posts
Posts: 34
Joined: Sat Aug 19, 2006 11:03 am
Reputation: 0
Location: Los Angeles
Real name: Bharat Bhardwaj
Gender: Male
Contact:

Postby trader_hal » Wed Oct 18, 2006 6:52 pm

Hi Michal,

I ran the debug and attached the debug output i recieved. Maybe you can shed some light on what it means.

ryan
rank: <50 posts
rank: <50 posts
Posts: 24
Joined: Wed Oct 18, 2006 9:57 am
Reputation: 0
Gender: Male
Contact:

Postby ryan » Wed Oct 18, 2006 7:06 pm

davidf wrote:here is a second Metatrader indicator, based on Michal's FPI. Indicator is for EUR/USD/CHF.

DavidF


David, thanks for coding this indicator. I cannot get it to run however. Any idea why? Which chart(s) should it run on, and what output/data should we expect?

Thanks, Ryan

Marci
rank: <50 posts
rank: <50 posts
Posts: 6
Joined: Sun Oct 01, 2006 4:46 pm
Reputation: 0
Gender: None specified

Postby Marci » Wed Oct 18, 2006 10:16 pm

Hello Michal,

i found this thread by a fluke and I'm really impressed!
Is there any way to test this strategy using Tradestation? I know that there is no historically ask / bid data available but can't i make use of current data?
I thought about the following:
Buy, Buy, Sell if FPI is "low" and get current ask/ask/bid

If FPI rises "up" Sell, Sell, Buy and get current ask/ask/bid

Within this it should be possible to calculate loss or profit?

Or am I wrong?

Best regards

Marc

EDIT:

perhaps something like this:

Code: Select all

var: runner(0);

Value1 =(currentbid of data1)
   * (  currentbid of data2)
   * 1/(currentask of data3);

Value2 =(currentask of data1)
   * (  currentask of data2)
   * 1/(currentbid of data3);

If (Value1 < 0.9995) and (runner=0) then begin
print("Buy ",Value1:0:4," ",currentbid of data1:0:4, " ",currentbid of data2:0:4," ",currentask of data3:0:4 );
runner=1;
end;


If (Value1 > 1.0002) and (runner=1) then begin
print("Sell ",Value2:0:4," ",currentask of data1:0:4, " ",currentask of data2:0:4," ",currentbid of data3:0:4 );
runner=0;
end;

Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.


Return to “NeoTicker indicators”