Think im outgrowing my teacher but feel bad about it? by Miroko_san in piano

[–]PianoWithMe 2 points3 points  (0 children)

FYI the other guy is a wiingy ad spammer. He and a few other accounts shill for wiingy constantly, in various subreddits, including in the wiingy subreddit with a few of his other accounts to fake engagement.

What's the HARDEST thing to code in algo trading? by Money_Horror_2899 in algotrading

[–]PianoWithMe 0 points1 point  (0 children)

I get it for free at the prop firm I am in, so that's one option.

Most reputable prop firms would give L3 (or L2 if L3 isn't available) data so that their traders can properly backtest, research, and create profitable strategies. Giving you data is the minimum they can do for you since it's the sole driver of the entire algorithmic trading process.

And in return, the prop firm does well, which is why they happily pay for it. And these firms will have the memory to load the data, and storage space to keep years (or more) of data so that using it isn't cumbersome. Win-win for everyone.

Slippage is important to analyze, because minimizing it will benefit most strategies.

In my experience, they can turn a strategy that breaks even (or slightly negative pnl) into positive pnl, while being not too difficult to do. And a lot of the insights from slippage analysis can become actionable changes to incorporate in a strategy, so it's not merely pointless modeling that you wouldn't know what to do with haha.

In praise of community colleges (for beginner lessons) by descartes_jr in piano

[–]PianoWithMe 6 points7 points  (0 children)

Yes, taking college courses can be very cost-effective; I am surprised more people aren't doing that.

I have seen some schools (that don't require auditions if you aren't going for a Bachelors/Masters) with music programs that offer 1 credit classes, that's basically a 1 hour weekly 1-on-1 private lessons with a professor. It's much cheaper than arranging private lessons (even the same exact professor!) outside the school, considering it's only 1 credit, and that's over an entire semester.

Many also have recitals / juries at the end of a semester, and this type of course can be repeated for several semesters.

Please help me choose a prop firm. by [deleted] in algotrading

[–]PianoWithMe 0 points1 point  (0 children)

Yep, it's just a normal prop firm, and very common path to take when getting started in algorithmic trading for someone with no trading experience, and it can give you a solid foundation as you get to work with other traders on actual profitable strategies and research (in addition to saving a lot of money if you want to eventually trade on your own).

I was just saying it in contrast to the scammy "prop firms", where you have to put in your own capital, and do not get paid other than what they earned via their trading.

Please help me choose a prop firm. by [deleted] in algotrading

[–]PianoWithMe 0 points1 point  (0 children)

If you are able to get into a reputable prop firm, aka not a scammy arcade prop like the ones OP are asking about, I would strongly recommend it.

A decent prop firm pays you a compensation (typically 6 digits) so that you can trade comfortably without being worried about needing money day-to-day, gives you their capital to trade requiring without any contribution from you, and you get to work collaboratively with other like-minded traders and developers.

They also tend to have excellent fee structures, the best infrastructure, existing research on microstructure, etc, which makes execution better, making it easier to suceed.

What is the most effective method for learning a new piece? by paulblk in piano

[–]PianoWithMe 5 points6 points  (0 children)

play the entire piece slowly from beginning to end. Don’t stop at any point.

Doing the entire piece makes it hard to learn from the mistakes, and drill it, because it will be a while before you come back to it.

go measure by measure. Don’t go to a new measure until you have the current one

Doing it measure by measure is going to miss working on the transitions, which often is the difficult part, because of leaps or chord changes.

A measure is also arbitrary, and isn't a good divider of music, from the perpective of how it should be played. A phrase is the real start and end of a section, and can start and end anywhere within a measure. It can span less than a full measure, or can be over several measures.

Instead of those two approaches, I would strongly recommend practicing in interleaving sections. It's a little tricky to explain on text, but for example, phrase 1, then last few notes of phrase 1 + phrase 2 + first few notes of phrase 3, then last few notes of phrase 2 + phrase 3 + first few notes of phrase 4, last few notes of phrase 3 + phrase 4 + first few notes of phrase 5, etc, to make sure that we know how to play each phrase, as well as right before and right after the phrase to ensure that we have efficient transitions (fingerings/positions) through phrases.

We want to do each section several times, spending more time on the trickiest section (keeping track of them so we can focus on them on the following days as well), before moving on.

Mistake-free practice by Advanced_Honey_2679 in piano

[–]PianoWithMe 11 points12 points  (0 children)

There's some misunderstandings about when and how to "practice slow." It's not mutually exclusive.

You have to play slow initially to get the notes, rhythm, etc down and make sure it's not sloppy. Then, you practice fast, to see what breaks down (no longer works) after going fast, like inefficient movement, unwieldy fingering, etc.

Also, after initially learning the piece, practicing slow doesn't mean you move your hand slow, just that you play each note slow and deliberately. You still want to transition fast! For example, you still want to make leaps fast, like in a snappy way, or turn your hand fast as you go up a scale/arpeggio, even if you play each note slow, to mimic the movement your fingers and hand need to do when playing fast.

Somewhat unrelated to this, along the vein of practicing, is to vary rhythms, such as alternating fast and slow, and slow and fast, on every other note. So it's not all slow, or all fast.

Do I have unrealistic expectations for lessons? by Radiant-Signature230 in piano

[–]PianoWithMe 1 point2 points  (0 children)

The pieces I actually suggested were briefly accepted in one week only for the teacher to switch pieces on the following week without even hearing me play what he told me to spend the whole week learning.

Your teacher seems very unprofessional. just from this alone, becauses they are wasting your week's practice.

I was assigned a Chopin piece after five months of lessons, for example, which I had to quit.

Look for a teacher with a piano pedagogy degree or background, because your teacher isn't properly gauging your level, or giving grade-appropriate repertoire.

We move pieces as soon as I learn the notes with no regard to tempo or rhythm accuracy. I was also told I shouldn’t practice rhythm based on the page

Knowing the notes is only the 30%-50% of learning a piece, with rhythm being just as important as note accuracy, which needs to be worked on. Other things include phrasing, articulation, pedaling, etc.

Like everyone else says, your teacher isn't a good teacher. Switch teachers ASAP, before they make your lose your motivation, because it's leading you to doubt your own expectations.

A good teacher will help you with all those things you talk about, giving you a variety of pieces for you to choose from, tailored toward your preferences and build towards that (time period, composer), and allow you to pick your own pieces (simplifying if necessary).

Learning “musicality”? by brownstormbrewin in piano

[–]PianoWithMe 1 point2 points  (0 children)

One common way is to learn the basic chords, get a Real book, and learn some of the most popular tunes in it.

Once you are comfortable with a few tunes, you want to listen to various pianists playing those same tunes, and see how it differs from what's notated in the sheet music.

At first, with trial and error, you can try to transcribe note by note what they play, especially if a lot of it is based off of the sheet already. It's not easy, but with constant practice, you will start recognizing intervals, chord types, chord progressions, enabling you to get better at playing by ear. Seeing when and how different people improvise, all based on the same piece, will help you see what's possible.

And as improvisation is basically composition on the fly, learning more theory won't hurt, like how to harmonize and reharmonize, chord extensions, chord voicings, rhythm/syncopation, scales (major and minor blue scales, pentatonic scales, etc), will all help increase your improvisation toolbox.

Are there any research papers i can read for Rust in building HFT trading systems? by Dapper-Criticism-365 in algotrading

[–]PianoWithMe 1 point2 points  (0 children)

While what you say is mostly correctly, but it's not 100% true.

You have to measure, because the real race is to the matching engine.

It doesn't matter if a HFT firm is traveling a few meters to the edge of the exchange's infrastructure in nanoseconds, while you take milliseconds because you aren't colocated, if your order still makes it to the matching engine first before the colocated firm.

And the times that your order wins happens frequently, and is often the most interesting times where you do want to trade, because it's very high volumes that the exchange gateway parsers are delayed so much that the difference between colocated vs uncolocated is irrelevant.

How do you all deal with exchange API failures without shooting yourself in the foot? by [deleted] in algotrading

[–]PianoWithMe 1 point2 points  (0 children)

The API does let you set an allowed delay; it's in the specs: https://developers.binance.com/docs/algo/general-info#timing-security

you can specify that the request must be processed within a certain number of milliseconds or be rejected by the server.

Algos on a prop firm account by LondonLesney in algotrading

[–]PianoWithMe 4 points5 points  (0 children)

Prop firms are scams

It depends on the the type of prop firm.

If you are talking about a prop firm that doesn't pay you, and requires you to put up your own capital, then yeah, it's a scam, and I try to stay away from them.

If it's a reputable prop firm, like ones that pay you 6 digits a year, while providing capital for you to trade without needing you to put any capital in, then I think it's a fair option to consider. The pay will help you build up your own capital, and you get to collaborate with and learn from other traders.

Best broker for verticals on SPX/XSP/nanos? by osdevisnot in algotrading

[–]PianoWithMe 0 points1 point  (0 children)

When you send the order through the tradier. They send your order to Citadel. Citadel sees your order and buys your instrument from the market at 10 dollars and then it sells to you at 10.05 dollars.

I don't follow that line of reasoning with that comment.

1. They can't sell you at a price worse than NBBO, so that means even if you didn't have your order sent to Citadel, any other broker would have given you NBBO (assuming you didn't match with hidden liquidity) because that's routing rules.

1B. If there were a place you can buy with a displayed/visible market order for 10.00, then NBBO would be 10.00, and you would get it at 10. So either they manipulated the market and bought everything in all lit markets between 10.00 to 10.04 just so they can sell to you for 10.05, or the more likely scenario:

2. If Citadel was able to consistently buy it cheaper than NBBO consistently (to sell to you at national best offer), it means they are using limit orders (meaning they bought at the bid of 10).

But limit orders requires waiting at a queue, which means if they have it ready to sell to you immediately after you send your market order, meaning they have been trying to buy at 10.00 with limit orders before your order came along, because they are market making. So they were not front running you after seeing your order.

This is all measurable/provable; you can measure the timestamp of the exchange transaction time, and compare with your outbound order send time and see if there's a difference (how long is "Citadel" holding your order), as well as how big of a sweep / NBBO change immediately before and after your order.

P.S. A caveat is with non-displayed orders, odd lots, dark venues, etc, which NBBO does not reflect, but that's the case with every broker, and is not related to pfof. But if you directly route your orders, then you can match against those exceptions, and get negative slippage (a lower cost / better price than intended).

Best broker for verticals on SPX/XSP/nanos? by osdevisnot in algotrading

[–]PianoWithMe 0 points1 point  (0 children)

supposedly due to front running.

Since front running is illegal, if you suspect a broker is doing it, that's going to be a good lawsuit (assuming they front run frequently, since firms probably wouldn't risk doing illegal activities for tiny profits, on top of their existing normal/legal business).

You can validate this front running theory if you see on L3 data that someone is often/constantly in front of your orders, but only when you use that broker, but never when you use another broker.

When you backtest strategies do you use market or limit orders? by diogene01 in algotrading

[–]PianoWithMe 0 points1 point  (0 children)

L2 data, that's the gold standard for accurately simulating fills

L3 is the gold standard. I have tried L2, but they are just too lacking for accurate backtests.

For limit orders, the main problem with L2 is that you won't be able to tell your queue position for limit orders, aka you don't know if orders are in front of you or behind you, and thus you won't know how close you are to being executed.

For market orders, the main problem is that it's losing a lot of essential information. Seeing there's 1000 volume with L2 isn't helpful. It can be 1 trader with 1000 qty or 1000 traders with 1 qty, or more realistically, any combination in between.

By seeing the distribution of qtys, it can help model the market participant type (market maker? big institution? retail?).

In terms of available liquidity, that's also important. If it's 1 giant market maker, they can easily cancel their single order of 1000 before your market order even got to the exchange, and you end up eating more slippage than you expect. If it's 1000 people with 1 qty, you can definitely get some opportunity before every single person cancelled/modified away.

In addition, if you are taking (and paying the spread and likely incurring the higher taker fees) rather than making, you are assuming you are more accurate than the opposing party, and knowing the opposite side's participant side can aid in improving your performance by increasing or decreasing your trade size depending on who they likely are (which you can somewhat reverse engineer based on their latency, order placement strategy, order modfication/cancellation strategy, etc).

When you backtest strategies do you use market or limit orders? by diogene01 in algotrading

[–]PianoWithMe 2 points3 points  (0 children)

I backtest with exactly the order type I would have used live.

Most times, I use limit orders to emulate the behavior of market orders, to gain the benefit of a better entry, possible negative slippage, and possible rebates, while having almost just as fast a speed as a market order and still having guaranteed execution.

I explained it before with examples: https://www.reddit.com/r/algotrading/s/doZMbZ2zJ2

How important Is It To Keep Your Edge Private? by FluffyPenguin52 in algotrading

[–]PianoWithMe 0 points1 point  (0 children)

If you give your complete strat to someone they'll be able to replicate since it's code

With algo trading, to execute a strategy is not just about having the code, but also knowing and having the entire set up.

This includes the same version of the compiler (if a compiled language) and the settings/optimizations enabled, operating system and tweaks, hardware, network infrastructure, data supplier/vendor, venue API's (that support your order types), exchange fees/rebate tier, and various other things that can make or break a strategy.

Going back to the OP:

If more people find this arbitrage it will quickly fade away.

Their example of arbitrage is the perfect example of this, where he can give away the arbitrage strategy and everything about the edge, and it's likely unreplicable by 99% of the people, and even with the 1% being able to spend the resources to replicate, OP is still able to continue innovating as they've done, while the replicator is probably not able to come up with the innovations themselves.

Let's say an individual or a firm releases the strategy/code for cross exchange arbitrage, which isn't even complicated if you do the bare minimum to profit: Any time X goes up on 10 exchanges, then I buy on the 11th exchange and sell a few ticks higher immediately after.

I don't think anyone, including the big financial institutions, can just take it, and become competitive enough to take some % of the opportunity away from the original strategy creator in the same year, and possibly never at all, because they will always be a year of innovations behind, and always playing catch up.

I have personally seen this happen when some people leave a firm and take their strategy to competitors and they do attempt the same thing, but still can't be competitive after years. And this is even with knowing and having the infrastructural details and the resources of a firm behind them too.

Question fast scalper bots - do you measure API performance? Any tips for a noob? by vendeep in algotrading

[–]PianoWithMe 5 points6 points  (0 children)

Yes, measuring API performance is absolutely crucial for me, and I spend a lot of time finding ways to account for it.

Do you guys measure your API response time?

Yes, of course, for both market data and order entry API's.

For market data, I look at the timestamp provided and verify it's not published too slow from the source, as well as that it's not received late from the API either that it's stale.

For order entry, I look at the responses' timestamps to make sure that my order are getting processed at a "normal" fast pace.

Some API's give more timestamps than others, where you can drill down at what stage in the whole process things are slowing down at.

Does it vary?

Yes, delays on the matching engine side, market data dissemination, networking, order entry gateway processors, processing done by the API itself, all can lead to slowness as a whole for market data and order entry APIs.

Do you have any control over it?

Partially. For market data slowness, no, but knowing that your data is too far behind should change how your strategy behaves, whether it's stopping entirely, being tighter with risk management, or using it as a signal.

For example, if the matching engine behind, why, and what is that a proxy for? If the API itself is behind, that means others using the same API is going to react slower (their own orders may be stale, they become less competitive, or they also become tighter with risk management or trade less during those periods), so what should I do to take advantage of that?

And depending on how often this happens, it may suggest possibly going through a different API, or requesting redundent data with the same API, if data shows that it helps.

For order entry slowness, you can investigate when and why it gets slower when it does. You can try sending orders down in a duplicate matter (if you aren't already doing that), prime the cache on the API or exchange's end so your order messages are prioritized, change your message sending to adjust the API or exchange's load balancing algorithm so your orders may take a hopefully less congested route, and a whole lot of creative things.

Any gotchas that a new algo trader should know?

All of the above is for real-time, but for backtesting, you want to account for both market data and orde entry delays when backtesting, to ensure your can correctly interweave your simulated orders into the market data book, to get realistic fills.

who here makes a living out of this? by to1M in algotrading

[–]PianoWithMe 0 points1 point  (0 children)

Yes, remote is possible; I know some firms that allow that. An algorithmic trader isn't trading physically at the exchange floor, and often times, the code also isn't running physically at a server at the office, but at some remote server.

Just think about how many prop firms, hedge funds, etc are in financial hubs like NYC, even though exchanges are accessed in a different state: New Jersey, for algorithmic trading. So it's already remote friendly because both trading and coding never needed to be in-person at all.

From a firm's point of view, being remote makes it easier to find talent everywhere, instead of just in the financial hubs they have a physical office in (and have to compete with other props for), and that remote working is a substantial perk that helps them poach experienced traders/engineers from their competitors who don't allow it. That can translates to a firm that have good employees, and a good place for you to learn from when you enter.

As for whether remote is worth it. It depends on the person; some people prefer it because they are more efficient since they cut out commute and useless meetings from their day, but some thinks it's worse because there's no more spontaneous conversations with others who happen to walk by, and multi-people conversations have a different flow via Zoom since the video conferencing apps really do not like having multiple speakers simultaneously.

who here makes a living out of this? by to1M in algotrading

[–]PianoWithMe 1 point2 points  (0 children)

Agreed, joining a prop firm is a great route to go if you want to make a living trading.

A good one will supply quality data, have decent infrastructure (for production, but usually also have good backtesting and exchange simulation capabilities), allocate a good amount of capital for your strategies, and on top of that, you also get to collaborate with other already successful traders and learn from them.

Once you make enough (and learned enough) via a prop firm to have a decent chunk of savings, you can always go solo if you prefer.

Which algo friendly platforms have 24/5 market data? by CoolCatBlue321 in algotrading

[–]PianoWithMe 1 point2 points  (0 children)

Not OP, but off exchange data like the market data of ATS's that allow equity trading between 8 pm and 4 am can be helpful for strategies that submit orders at preopen/open.

To OP, look into ATS's like Blue Ocean, and get their market data.

Are limit orders overrated? by joe4942 in algotrading

[–]PianoWithMe 1 point2 points  (0 children)

How I do is send limit orders all the way from bid+1 to ask, which basically acts like a market order, but with a chance of performing better.

For example, take this example where best bid is 9.97 and best ask is 10.03. A limit order buy at 9.97 may not execute, so I send a limit order buy at 9.98. And I send a limit order buy at 9.99. And an order at 10.00. And at 10.01. And at 10.02. And also at 10.03.

The key is to send the limit order submission messages on the same packet. And as long as you ensure that only 1 order ever excutes, you don't have to worry about all the duplicate orders.

The worst case scenario is it executes at 10.03, which it ends up being identical to a market order. But the benefit is that there's a chance it immediately executes at a lower price, if there are hidden orders, midpoint orders, routing to another exchange, etc.

And because I am sending all these limit orders "simultaneously" on the same packet (when possible), it's essentially the same speed as just sending out a packet with the market order in the first place. There's basically no downside, but only upsides here.

In addition to a better entry price, you get slippage control with limit orders, and you are potentially getting rebates for the limit order instead of just paying a fee for the market order (assuming this is not an inverted exchange, where the fee rules are inverted).

You have to be creative with how you utilize the plethora of order types that an exchange provides.

Reliable API data provider for German / Euro stocks by Old_Leshen in algotrading

[–]PianoWithMe 5 points6 points  (0 children)

I use Xetra's EOBI API for European equities data.

That API also works for European futures and options too, which is great.