Is it possible to create new node types using blueprints?

Is there a way of creating something like a function or macro that does not belong to a particular graph in Blueprints?

Essentially, can we make new nodes from blueprints? Or is this C++ only?

Function you make in blueprint class can be used outside that blueprint using context menu that appears when you drop wire of that blueprint class instance to empty canvas of blueprint. You can also create Blueprint Macro Library:

https://docs.unrealengine.com/latest/INT/Engine/Blueprints/UserGuide/Types/MacroLibrary/index.html

Yes, thank you. But what I’m really talking about is making new nodes. Macro Library looks interesting. I’ll look into that.