Australian (ASX) Stock Market Forum

Dump it Here

@Skate I think that the current market conditions have got something to do with this. People see traders struggling in these conditions and maybe start to think that it's all too hard for them to master. This can be a time to learn what needs to learnt in order to be ready for the next bull run.

One important thing for all traders is to know when it's safe for them to go into the water, do they have the skill to handle a big hard breaking surf or should they stick to calmer conditions until they are ready for the hard stuff.
This Smells like "CAPITULATION" to me
This is when everybody who was ever going to Sell has Sold and the ownership of shares have been transferred from the Weak Holders to the Strong Holders

The Trick as I have learnt the Hard way and am Still Learning to this very day is that This Sport is all about SEAMANSHIP with all its Disciplines and Ship Design
EG : How many Sails would you present to the wind at Dawn tomorrow
X, Y or Z or NONE?
This was my Very First Ship Design (DIVERSIFIED)
1 Industrial
1 Diverse Miner
1 Bank

Unfortunately I found this Diversified Ship Design Unsatisfactory


XYZ Yacht.GIF
 
Listen to the YouTube
It will be the funniest 3 minutes you will ever hear & I can guarantee - you will never forget Mark from Greenacre. I always cheer for the underdog but not, in this case. I'm hoping Mark didn't win the Harley.

How smart do you have to be to be a profitable trader?
Brains are an overrated attribute when it comes to trading but you do need a certain level of grey matter to play this game.



Skate.
 
Brains
Brains are overrated mainly because smart people tend to think logically & have a hard time dealing with a market that ignores what should be painfully obvious. The market is full of emotional participants making illogical decisions most of the time. Also, from personal experience, if you are too analytical, you will be surprised often. Using logic to figure out what the market might do on any given day is a waste of time.

Irrational & moody
One of the key advantages we have is knowing that the stock market is irrational, moody, & prone to doing unexpected things. We recognize that we can take steps to profit when the mood is unusually good or run and hide when things become dark and gloomy. As @DaveTrade alluded to, like most other worthwhile things in life, if it were extremely easy to learn & do well, it wouldn’t be so potentially lucrative.

Skate.
 
Mediocre when it comes to trading
Being mediocre sometimes has its place, even the best traders have plenty of lousy picks along the way, but it is the manner in which you handle those positions that ultimately determines your level of success.

The market is fascinating
One of the reasons that the market is so fascinating is that it combines elements of psychology, business, mathematics, & numerous other disciplines. I don't know of any other profession that is so lucrative with little or no effort. The only negative I see is that you need a decent bankroll to start with.

Like they say
If you want to have a million dollars at the end of the trading year, start with two million dollars.

Skate.
 
Brains are overrated mainly because smart people tend to think logically & have a hard time dealing with a market that ignores what should be painfully obvious.
Well @Skate I think that you at least have to have enough smarts to spell AC DC when someone tells you how to spell it before asking you. :)
 
Respect others & their way of thinking
6+3=9
But so does 5+4

Healthy exchange
Given a certain point of view, others (including @ducati916) will take a position that they don't necessarily agree with for the sake of debate or to "explore" the thought further, which is healthy. There is always a range of views & just as many different ways of thinking about them.

Skate.
 
Respect others & their way of thinking
6+3=9
But so does 5+4

Healthy exchange
Given a certain point of view, others (including @ducati916) will take a position that they don't necessarily agree with for the sake of debate or to "explore" the thought further, which is healthy. There is always a range of views & just as many different ways of thinking about them.

Skate.
I assume you are only throwing 2 dice?
 
@Skate has put out an open invitation to join him up on stage and I've taken him up on it today;

What is most important
When learning to trade is it most important to learn how to trade or when to trade? Even the simplest of trading techniques, a moving average crossover, can be very profitable if it's used at the right time. Most traders when learning spend most or all of their time focused on trading techniques but reading the market movement as a whole, the big picture, is just as important; and what I'm saying here is, it is more important if you want to make money from the markets sooner rather than later in your learning journey.
 
Now you want to use my soapbox as well
Unfortunately @DaveTrade there is no crowd. I have a multitude of ideas for future posts as I don't like to rehash or canvass something I have posted extensively previously.

I prefer to canvas new ideas or post about what interests others
I think it's a forgotten point, but when someone posts they are posting stuff they already know. That's why it's important for others to have their say. @Gringotts Bank prosecuted his case of how he takes advantage of the ZigZag function very well & I've given the other side to the discussion. No matter how much we banter it will not change our stance on the matter. Playing tennis with someone in this matter is not only tiresome but a waste of both our time & effort.

Skate.
"Playing tennis with someone in this matter is not only tiresome but a waste of both our time & effort".

I didn't find it tiresome or a waste of effort at all. All I said is that you can use zigzag in backtesting if you have certain settings. Then gave some code to prove it. I didn't even raise the topic; all I did was respond. It's not a big deal.
 
All I said is that you can use zigzag in backtesting if you have certain settings. Then gave some code to prove it.

The ZigZag function
Should never be used in "trading or backtesting" as the signals keep repainting when more data is received. The repainting is due to the "dynamic nature of this function", therefore, the backtest results can be highly misleading.

The experiment
After swapping the buy & sell conditions of the "HYBRID Strategy" using @Gringotts Bank code snippet I backtested both strategies for a side-by-side comparison. The backtest period is this calendar year from the 1st of January 2022 to the 7th of November 2022. It's important to remember when backtesting a strategy great care should be taken to exclude any "revisable parameters" ensuring the backtest results are valid & accurate.

Comparison.jpg

When it's too good to be true
It usually is.

Skate.
 
The experiment
After swapping the buy & sell conditions of the "HYBRID Strategy" using @Gringotts Bank code snippet I backtested both strategies for a side-by-side comparison. The backtest period is this calendar year from the 1st of January 2022 to the 7th of November 2022. It's important to remember when backtesting a strategy great care should be taken to exclude any "revisable parameters" ensuring the backtest results are valid & accurate.

View attachment 148916

When it's too good to be true
It usually is.

Skate.
For clarity,
I did work with a supposedly not repainting zigzag a while back, somehow, the real world did not match the backtest.to this day, i am not aware where the looking forward was as the code was supposedly fool proof..i even wonder if it was not hidden in some casual MA or simiar use.
I gave up so just beware.
But i was also using shitty data as i discovered later so a lot of that "experience"during that period is down the drain
Actually tempted to give it a go again ..and see if i can find the flaw.even paper run after...
 
The experiment
After swapping the buy & sell conditions of the "HYBRID Strategy" using @Gringotts Bank code snippet I backtested both strategies for a side-by-side comparison. The backtest period is this calendar year from the 1st of January 2022 to the 7th of November 2022. It's important to remember when backtesting a strategy great care should be taken to exclude any "revisable parameters" ensuring the backtest results are valid & accurate.

View attachment 148916

When it's too good to be true
It usually is.

Skate.
That's just wrong. I don't know what else to say.

Others can test it. It takes literally 2 seconds.

Here's FMG. I'm testing my code as posted, and I'm not substituting snippets from some other code to confuse things.


x.png
 
Actually tempted to give it a go again ..and see if i can find the flaw.even paper run after...

@qldfrog please do not waste your time.

That's just wrong. I don't know what else to say.

Others can test it. It takes literally 2 seconds.

@Gringotts Bank disputes my findings of substituting his base ZigZag code as the buy & sell criteria of my "HYBRID Strategy".

@qldfrog it will only take you seconds, would you be kind enough to run a simulated backtest using GB's buy & sell conditions of his non-repainting ZZ code?

GB's simplified code
This is the code I used to run the backtest from the 1st of January to the 7th of November 2022

_SECTION_BEGIN( "NonPainting" );

pr = .00001;
zzHiLo = Zig( c, pr );
pk = zzHiLo > Ref( zzHiLo, -1 ) AND zzHiLo > Ref( zzHiLo, 1 );
tr = zzHiLo < Ref( zzHiLo, -1 ) AND zzHiLo < Ref( zzHiLo, 1 );
Plot( zzHiLo, "", colorYellow, styleLine );

Buy = tr;
Sell = pk;

_SECTION_END();

Let me say it once again
The ZigZag's indicator of its many forms has a major issue being its dynamic nature which is a real disadvantage. Furthermore, the indicator cannot be used in mechanical systems, since the backtesting of such systems should exclude any revisable parameters in order to be valid and accurate.

Skate.
 
Why do trading strategies stop working?
I won't be talking about poorly-constructed strategies because all strategies will shine at times even without having a discernable edge.

Why do well-constructed strategies stop working?
There is a multitude of reasons & the reason only becomes apparent after suffering substantial losses. Curve fitting, market changes, survivorship bias, behavioral mistakes, & commissions slippage all play their part to some degree.

Skate.
 
When strategies are well constructed
I'm saying even good strategies need to be well constructed having optimized parameters, settings & filters. Once those requirements have been completed the strategy needs to be extensive backtesting, forward testing, & paper traded over a variety of market conditions to establish its profitability. When you have a robust strategy the issue is most likely attributed to "behavioral mistakes" & or "market changes". Remember, the forces that change the markets are the emotions of the participants driven by events.

When developing a trading strategy
Some of the most difficult considerations that will affect profitability are when to take profits & when to cut losers. Get one or both of these conditions wrong & you are doomed to fail as a system trader. One of the most common mistakes traders make is the inability to correctly detect & define price trends, the very heart of trading.

Skate.
 
@qldfrog please do not waste your time.



@Gringotts Bank disputes my findings of substituting his base ZigZag code as the buy & sell criteria of my "HYBRID Strategy".

@qldfrog it will only take you seconds, would you be kind enough to run a simulated backtest using GB's buy & sell conditions of his non-repainting ZZ code?

GB's simplified code
This is the code I used to run the backtest from the 1st of January to the 7th of November 2022

_SECTION_BEGIN( "NonPainting" );

pr = .00001;
zzHiLo = Zig( c, pr );
pk = zzHiLo > Ref( zzHiLo, -1 ) AND zzHiLo > Ref( zzHiLo, 1 );
tr = zzHiLo < Ref( zzHiLo, -1 ) AND zzHiLo < Ref( zzHiLo, 1 );
Plot( zzHiLo, "", colorYellow, styleLine );

Buy = tr;
Sell = pk;

_SECTION_END();

Let me say it once again
The ZigZag's indicator of its many forms has a major issue being its dynamic nature which is a real disadvantage. Furthermore, the indicator cannot be used in mechanical systems, since the backtesting of such systems should exclude any revisable parameters in order to be valid and accurate.

Skate.
That is NOT the code I posted. What on earth are you doing cutting out half of it? If anyone wants to test it, test the code that I posted.
 
What's trading all about
As traders we buy a position in the hope sometime in the future we will be able to offload our position to someone else at a higher price than we brought it. Traders make money in the markets by exploiting changes in prices. Most traders put all their effort into buying whereas successful traders put most of their effort into selling.

The main effect of profitability
Is knowing when to take profits & when to cut losers. Trading is worse than a zero-sum game when commission is accounted for. Nothing works all the time when trading & you need to accept that some trading strategy at one point or another will & can stop working. By keeping accurate records of ongoing performance you'll better be prepared to spot the changes, giving you ample time to respond. When in doubt, I say, "pull out".

Skate.
 
That is NOT the code I posted. What on earth are you doing cutting out half of it? If anyone wants to test it, test the code that I posted.

# GB' non-repaint ZigZag code
The changes & omissions are highlighted

PositionSize = 10000; // already in the HYBRID Strategy (position size used $10k)
pr = .00001;
zzHiLo = Zig( c, pr );
pk = zzHiLo>Ref(zzHiLo,-1) AND zzHiLo>Ref(zzHiLo,1);
tr = zzHiLo<Ref(zzHiLo,-1) AND zzHiLo<Ref(zzHiLo,1);
SetTradeDelays(1,1,0,0);
BuyPrice=SellPrice=C; // redundant
Buy = tr; // my buy condition (tr)
Sell = pk; // my sell condition (pk)
Plot(zzHiLo,"",colorgreen,styleLine); // changed to yellow for better visability
SetChartOptions(0,chartShowArrows|chartShowDates); //Charting below
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) \n{{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
SetChartBkColor(ParamColor("Background Color",ColorRGB(0,0,0)));
SetBarFillColor(IIf(C>O,ParamColor("Candle UP Color", ColorRGB(33,69,129)),IIf(C<=O,ParamColor("Candle Down Color", colorbrown),colorLightGrey)));
Plot(C,"",IIf(C>O,ParamColor("Wick UP Color", ColorRGB(128,128,192)),IIf(C<=O,ParamColor("Wick Down Color", colorbluegrey),colorLightGrey)),64,0,0,0,0);

# Skate's condensed code
Other than Plotting it's basically the same code

_SECTION_BEGIN( "NonPainting" );

pr = .00001;
zzHiLo = Zig( c, pr );
pk = zzHiLo > Ref( zzHiLo, -1 ) AND zzHiLo > Ref( zzHiLo, 1 );
tr = zzHiLo < Ref( zzHiLo, -1 ) AND zzHiLo < Ref( zzHiLo, 1 );
Plot( zzHiLo, "", colorYellow, styleLine );

Buy = tr;
Sell = pk;

_SECTION_END();

Non-painting ZZ code Code
@Gringotts Bank there is no discernable difference between your code & my simplified code.

NB
As you (GB) didn't specify a periodicity I backtested your Non-painting ZigZag code using "weekly parameters"

Skate.
 
Last edited:
# GB' non-repaint ZigZag code
The changes & omissions are highlighted

PositionSize = 10000; // already in the HYBRID Strategy (position size used $10k)
pr = .00001;
zzHiLo = Zig( c, pr );
pk = zzHiLo>Ref(zzHiLo,-1) AND zzHiLo>Ref(zzHiLo,1);
tr = zzHiLo<Ref(zzHiLo,-1) AND zzHiLo<Ref(zzHiLo,1);
SetTradeDelays(1,1,0,0);
BuyPrice=SellPrice=C; // redundant
Buy = tr; // my buy condition (tr)
Sell = pk; // my sell condition (pk)
Plot(zzHiLo,"",colorgreen,styleLine); // changed to yellow for better visability
SetChartOptions(0,chartShowArrows|chartShowDates); //Charting below
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) \n{{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
SetChartBkColor(ParamColor("Background Color",ColorRGB(0,0,0)));
SetBarFillColor(IIf(C>O,ParamColor("Candle UP Color", ColorRGB(33,69,129)),IIf(C<=O,ParamColor("Candle Down Color", colorbrown),colorLightGrey)));
Plot(C,"",IIf(C>O,ParamColor("Wick UP Color", ColorRGB(128,128,192)),IIf(C<=O,ParamColor("Wick Down Color", colorbluegrey),colorLightGrey)),64,0,0,0,0);

# Skate's condensed code
Other than Plotting it's basically the same code

_SECTION_BEGIN( "NonPainting" );

pr = .00001;
zzHiLo = Zig( c, pr );
pk = zzHiLo > Ref( zzHiLo, -1 ) AND zzHiLo > Ref( zzHiLo, 1 );
tr = zzHiLo < Ref( zzHiLo, -1 ) AND zzHiLo < Ref( zzHiLo, 1 );
Plot( zzHiLo, "", colorYellow, styleLine );

Buy = tr;
Sell = pk;

_SECTION_END();

Non-painting ZZ code Code
@Gringotts Bank there is no discernable difference between your code & my simplified code.

NB
As you (GB) didn't specify a periodicity I backtested your Non-painting ZigZag code using "weekly parameters"

Skate.
You conveniently cut out the trade delay. Try again, and be honest this time. The period of testing (D/W/M) makes no difference.
 
Top